Python 按id查找元素不在Chrome无头模式下工作 硒-3.141.0 无头镀铬=75.0.3770.142
示例代码:Python 按id查找元素不在Chrome无头模式下工作 硒-3.141.0 无头镀铬=75.0.3770.142,python,selenium,selenium-webdriver,Python,Selenium,Selenium Webdriver,示例代码: from selenium import webdriver options = Options() options.add_argument('--headless') driver = webdriver.Chrome(CHROME_DRIVER_LOCATION, options=options) driver.set_page_load_timeout(timeout) driver.find_element_by_id("keywords").send_keys("so
from selenium import webdriver
options = Options()
options.add_argument('--headless')
driver = webdriver.Chrome(CHROME_DRIVER_LOCATION, options=options)
driver.set_page_load_timeout(timeout)
driver.find_element_by_id("keywords").send_keys("some keywords to search")
“关键字”属于
类型
最后一行是在无头铬失败和工作良好,否则
错误:
驱动程序。按id(“关键字”)查找元素。发送关键字(“要搜索的某些关键字”)
文件“/usr/local/lib/python3.7/site packages/selenium/webdriver/remote/webelement.py”,第479行,在send_键中
“值”:键到键入(值)})
文件“/usr/local/lib/python3.7/site packages/selenium/webdriver/remote/webelement.py”,第633行,在
返回self.\u parent.execute(命令,参数)
文件“/usr/local/lib/python3.7/site packages/selenium/webdriver/remote/webdriver.py”,第321行,在execute中
self.error\u handler.check\u响应(响应)
文件“/usr/local/lib/python3.7/site packages/selenium/webdriver/remote/errorhandler.py”,第242行,在check_响应中
引发异常类(消息、屏幕、堆栈跟踪)
selenium.common.exceptions.ElementNotInteractiableException:消息:元素不可交互
(会话信息:无头镀铬=75.0.3770.142)
对于
headless
浏览器,您必须将窗口大小设置为在事件发生时触发。因为headless
浏览器无法识别到哪里单击而不选择窗口大小
options= Options()
options.add_argument('--headless')
options.add_argument('window-size=1920x1080');
这是否在交互模式下工作?请尝试在chrome浏览器中打开页面,并检查与该id关联的元素。它可能只是要与之交互的子项的包装。或者,您可以尝试使用驱动程序。执行脚本(“使用JS代码与您的元素交互”)
并查看查看其他设置窗口大小是否对我有帮助。也许你想编辑你的答案。如果你看到我问你的评论部分,你的代码是否在交互模式下工作。如果是,这意味着对于headless,你需要设置窗口大小来执行操作。哦,我错过了。谢谢欣赏