是否可以在没有运行X服务器的情况下运行Selenium脚本?

Zac*_*urt 9 python selenium headless selenium-rc selenium-webdriver

我有一个使用selenium RC的python脚本; 特别是webdriver.

我希望将脚本作为post-commit钩子运行,最好是通过IE,Safari(如果可能),Chrome和Firefox.

但是我不确定我需要做什么,因为每次我在本地机器上运行它时,都会弹出一个浏览器.

我听说过"酱油".这是最好的解决方案吗?

pla*_*aes 12

是的,您需要运行X服务器,因为Selenium需要运行的浏览器,并且浏览器需要某种X服务器才能运行.

幸运的是,有许多类型的X服务器,其中一个是Xvfb aka X虚拟帧缓冲区,它可以在内存中执行所有操作,因此不需要屏幕.

维基百科也有一些不错的例子.

也有很多的问题,在这里SO关键字headless,xvfbselenium.做出明智的选择 ;)

[编辑]:这是一个很好的例子.