是否有 Windows 等同于 PyVirtualDisplay

Is there a Windows equivalent to PyVirtualDisplay

我为一个伙伴写了一个网络抓取工具,以节省他的工作时间。它是用 Python 编写的,使用 Selenium 并打开 Firefox 浏览器。

我在 Linux 我使用 PyVirtualDisplay 的机器上自己编写了这段代码,因此 Firefox 实际上不会打开并打扰我的工作。

如何在 Windows PC 上的虚拟显示器中实现 运行?

你不能在 Windows 上 运行 PyVirtualDisplay 的原因是 PyVirtualDisplay 使用 Xvfb 作为它的显示,而 Xvfb 是 X Window 系统的无头显示服务器, Windows 不使用 X Window 系统.

不推荐

所以...如果您坚持使用 PyVirtualDisplay,您可以做的是更改 Display(visible=True) 或者您可以设置后端,如 API here 所示.

我的推荐

不要使用 PyVirtualDisplay 您可以使用任何网络驱动程序,例如 Chrome 驱动程序,只需添加 Chrome 带有 --headless 的选项。

或者在您的情况下,您使用的是 firefox,因此它看起来像:

from selenium import webdriver
from selenium.webdriver.firefox.options import Options

options = Options()
options.add_argument("--headless")
driver = webdriver.Firefox(firefox_options=options, executable_path="C:\Utility\BrowserDrivers\geckodriver.exe")
print("Firefox Headless Browser Invoked")
driver.get('http://google.com/')
driver.quit()

有关更多更新信息,请查看 here

希望对您有所帮助!