【问题标题】:Xvfb on WindowsWindows 上的 Xvfb
【发布时间】:2017-04-27 05:20:20
【问题描述】:

我正在使用 pyvirtualdisplay 使用无头 Firefox 浏览器运行测试。这是我正在使用的代码:

from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from pyvirtualdisplay import Display

display= Display(visible=0, size=(320, 240)).start()  # visible=0
display.start()
driver = webdriver.Firefox()
driver.get("https://google.com")

display.quit()

以及我获得的回溯:

easyprocess.EasyProcessCheckInstalledError: cmd=['Xvfb','-help']

【问题讨论】:

标签: python python-2.7 selenium xvfb


【解决方案1】:

你不能在 Windows 上使用 pyvirtualdisplay。

它只是一个调用 Xvfb 的包装器。 Xvfb 是 X Window 系统的无头显示服务器。 Windows 不使用 X Window 系统

【讨论】:

  • 您知道 Windows 的替代方案吗?
【解决方案2】:

对于 Windows 用户,您可以使用免费的 VNC 实用程序。例如,如果您正在运行 docker,您可以分 3 步完成:

  1. 运行具有独立 firefox 服务器的 docker 映像(为 VNC 公开端口 5900)
    $ docker run -d -p 4444:4444 -p 5990:5990 selenium/standalone-firefox-debug
  1. 打开VNC并连接到那个主机localhost:5990,密码是'secret'

  1. 现在只需执行您的 selenium 脚本,您就会在 VNC 窗口中实时看到正在发生的事情。只需确保脚本指向您的 docker 独立服务器,例如 localhost:4444/wd/hub 即可使其正常工作

【讨论】:

    猜你喜欢
    • 2014-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-03
    • 1970-01-01
    • 2017-09-24
    • 1970-01-01
    相关资源
    最近更新 更多