Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 按id查找元素不在Chrome无头模式下工作 硒-3.141.0 无头镀铬=75.0.3770.142_Python_Selenium_Selenium Webdriver - Fatal编程技术网

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,你需要设置窗口大小来执行操作。哦,我错过了。谢谢欣赏