解决使用无头浏览器定位不到的坑

在服务器上运行时,使用无头浏览器,结果发现很多元素定位不到

option = webdriver.ChromeOptions()
option.add_argument('--no-sandbox')
#以无头模式运行
option.add_argument('--headless')
option.add_argument('lang = zh_CN.UTF - 8')
driver = webdriver.Chrome(chrome_options=option)
driver.maximize_window()
driver.implicitly_wait(5)



打印日志只提示
ERROR 出现错误,错误信息 Message: element not interactable
元素定位不到,但是在有UI的情况下所有元素都能正常定位
后面查看错误截图发现

在使用无头浏览器后,driver.maximize_window()这句代码并没有生效

所以需要手动设置浏览器窗口大小

添加以下代码

option.add_argument('--window-size=1920,1080')

后续所有定位都可以正常定位

原文地址:https://www.cnblogs.com/5566yesongqiao/p/14030326.html