【问题标题】:--headless flag no longer works after upgrade to chrome 76/chromedriver 76--headless 标志在升级到 chrome 76/chromedriver 76 后不再起作用
【发布时间】:2019-08-16 18:34:37
【问题描述】:

我正在使用无头 chrome 运行 python selenium 测试。更新到 chrome 版本 76.0.3809.87 和 chromedriver 版本 ChromeDriver 76.0.3809.68 后,我使用的 chromeOptions(参见下面的代码示例)......不再工作。即浏览器启动(非无头)并且分辨率设置也不起作用

升级到 chromedriver 75/76 后还有其他人看到这个吗?

chrome_options = {'args': ['headless', '--window-size=1920,1080', 'no-sandbox', '--dns-prefetch-disable','--disable-dev-shm-usage']}
capabilities = {'browserName': 'chrome', 'chromeOptions':chrome_options}
cls.driver = webdriver.Chrome(desired_capabilities=capabilities)

【问题讨论】:

  • 为什么您的headless 选项缺少前导--
  • @SiKing 其实两者都是一样的。

标签: python selenium selenium-webdriver selenium-chromedriver


【解决方案1】:

您不需要使用desiredCapabilities 来传递这些参数,您可以使用Options 代替。我已经测试过了,它可以工作。

谷歌浏览器 - 76.0.3809.87

ChromeDriver - 76.0.3809.68

- 3.141.0

Python - 3.7.2

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

options = Options()
options.headless = True
driver = webdriver.Chrome(options=options)

driver.get('https://www.google.com')
driver.save_screenshot("screenshot.png")

driver.quit()

检查从下面的无头浏览器获得的屏幕截图。

【讨论】:

  • 如果您删除所有不必要的选项并使用chrome_options.headless = True启用无头模式,这个答案会很好
  • 并最终退出驱动程序
  • @CoreyGoldberg 我刚刚从问题中提取了这些论点。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-12-18
  • 2018-03-11
  • 2011-09-22
  • 1970-01-01
  • 2019-12-27
相关资源
最近更新 更多