我正在使用Selenium RC自动执行一些浏览器操作,但我希望浏览器不可见。这个是可能的吗?多么?Selenium Grid怎么样?我也可以隐藏Selenium RC窗口吗?
发布于 2012-01-18 20:48:05
在Linux上,您可以在无头(虚拟)显示中运行WebDriver来隐藏浏览器。这可以使用Xvfb (X虚拟帧缓冲区)来完成。
您可以使用xvfbwrapper
:https://github.com/cgoldberg/xvfbwrapper直接从Python代码控制Xvfb.
用于运行headless的Python代码将如下所示:
from selenium import webdriver
from xvfbwrapper import Xvfb
display = Xvfb()
display.start()
# now Firefox will run in a virtual display.
# you will not see the browser.
driver = webdriver.Firefox()
driver.get('http://www.google.com')
print(driver.title)
driver.quit()
display.stop()
在Debian/Ubuntu上安装依赖项:
$ sudo apt-get install xvfb
$ pip install xvfbwrapper
发布于 2014-05-28 04:11:01
我很容易就把浏览器窗口隐藏起来了。
只有install PhantomJS。然后,更改此行:
driver = webdriver.Firefox()
至:
driver = webdriver.PhantomJS()
剩下的代码就不需要修改了,浏览器也不会打开。出于调试目的,请在代码的不同步骤中使用driver.save_screenshot('screen.png')
。
发布于 2009-09-14 04:28:56
+1表示Selenium RC作为windows服务。
为了让测试完全隐蔽地运行,我认为如果你在windows上,你没有太多的解决方案。
我要做的是让局域网中的一台计算机始终在线,并运行selenium RC服务器。因此,您使用计算机IP而不是localhost来运行测试。例如:
browser = selenium("10.15.12.34",4444,"*firefox","http://saucelabs.com")
(考虑到这是运行服务器的计算机的ip )。
有了这个设置,你在你的计算机上运行你的测试,浏览器和RC服务器窗口在另一台计算机上,一旦完成就回到你的计算机上。
https://stackoverflow.com/questions/1418082
复制相似问题