我为一个伙伴写了一个网络爬虫,以节省他的工作时间。 它是用Python
编写的,使用Selenium
并打开火狐浏览器。
自己在我使用的 Linux 机器上编写了这段代码PyVirtualDisplay
所以 Firefox 实际上不会打开并干扰我的工作。
如何使其在 Windows PC 上的虚拟显示器中运行?
你不能在Windows上运行PyVirtualDisplay
的原因是PyVirtualDisplay使用Xvfb作为它的显示,而Xvfb是X Window系统的无头显示服务器,Windows不使用X Window系统。
不推荐
所以......如果你坚持使用PyVirtualDisplay,你可以做的是改变Display(visible=True)
或者你可以按照这里的API所示设置后端。
我的推荐
不要使用PyVirtualDisplay
您可以使用任何网络驱动程序,例如Chrome驱动程序,只需添加带有--headless
的ChromeOptions即可。
或者,在您的情况下,您使用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()
有关更多更新的信息,请查看此处。
希望对您有所帮助!