问题
1
2
3
Python 3.8.10
pip 21.1.1
selenium==3.141.0
本地调试配置 chrome 驱动 driver,使用无头模式运行。运行结果提示元素定位不到,但是不使用无头模式的情况是是可以运行的。以下为配置代码:
1
2
3
4
path = ChromeDriverManager(cache_valid_range=7).install()
option = webdriver.ChromeOptions()
option.add_argument('--headless') # 无头模式
driver = webdriver.Chrome(executable_path=path, options=option)
解决
在驱动配置代码中增加窗口尺寸的设置,用以解决元素定位不到的问题:
1
2
3
4
5
path = ChromeDriverManager(cache_valid_range=7).install()
option = webdriver.ChromeOptions()
option.add_argument('--headless') # 无头模式
option.add_argument('--window-size=1920,1080') # 定义窗口尺寸,解决无头模式下元素定位不到的问题
driver = webdriver.Chrome(executable_path=path, options=option)