python - 无头 chromedriver python “未捕获的 tagerror”
问题描述
from selenium import webdriver
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument("--headless")
chrome_options.add_argument('--user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36"')
chrome_options.add_argument("--window-size=1920x1080")
chrome_options.add_argument("--disable-extensions")
driver = webdriver.Chrome(chrome_options=chrome_options)
driver.get('https://www.mycarinfo.com.my/Valuation/SearchVehicle?version=free')
在 Windows 7、Python 3.6.4、Selenium 3.9.0、Chromedriver 2.43 上运行代码代码在非无头模式下执行没有问题。在无头模式下,在 Anaconda Prompt 中执行,连续输出以下错误:
解决方案
由于您在 windows 上运行,因此--disable-gpu
在使用 headless 时需要添加参数。请参阅https://developers.google.com/web/updates/2017/04/headless-chrome
在您说您正在使用的 selenium 版本3.9
中,您还可以使用方便的方法set_headless()
来添加--headless
和--disable-gpu
为您添加。在较新的版本中,它是一个二传手options.headless = True
推荐阅读
- android - 可以为 Play 管理中心上可用的应用程序以不同的“buildTypes”模式安装 APK 吗?
- python - 具有多元正态分布的 Numpy 网格
- angular - 一个延迟加载模块用于 n 多条路线
- fullcalendar - 跨月活动
- flutter - Flutter 2.0 web 落后于移动浏览器
- c# - 数据列表中的超链接不可点击
- kotlin - 将 setOf 作为参数传递给函数。那怎么能做到呢?
- android - 更改语言区域设置android时字体不会更改
- objective-c - 删除预期丢失的 @1x 图像的 XCode 警报
- elasticsearch - 使用bulkrequest向elasticsearch写入数据时,elasticsearch的_id字段是否支持“”之类的空白字符?