1. 示例代码
from selenium import webdriver
driver = webdriver.Chrome()
driver.get('http://124.223.30.31:xxx/forum.php')
driver.find_element('id','ls_username').send_keys('admin')
端口我匿了
这个代码是没有问题的,任意其他代码在当前的环境下
都是会出现这个错误的
2. 报错
从下面的报错可以看到在find_element
的时候出错了,而这个代码以前是ok的
核心的出错提示selenium.common.exceptions.WebDriverException: Message: unknown error: result.webdriverValue.value list is missing or empty in Runtime.callFunctionOn response
闻所未闻哈~
Traceback (most recent call last):
File "D:\demo.py", line 11, in <module>
driver.find_element('id','ls_username').send_keys('admin')
File "D:\Python39\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 856, in find_element
return self.execute(Command.FIND_ELEMENT, {
File "D:\Python39\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 434, in execute
self.error_handler.check_response(response)
File "D:\Python39\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 247, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: unknown error: result.webdriverValue.value list is missing or empty in Runtime.callFunctionOn response
(Session info: chrome=119.0.6045.124)
Stacktrace:
...(省去几百字)
3. 搜
匹配的结果不多,倒还有
https://github.com/SeleniumHQ/selenium/issues/13084
原来是驱动版本的问题
4. 环境
当前环境:
chrome version:119.0.6045.124 (正式版本) (64 位) (cohort: Stable)
chromedriver version: 118.0.5993.70
selenium:4.3.0
更新下驱动https://googlechromelabs.github.io/chrome-for-testing/
https://edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing/119.0.6045.105/win64/chromedriver-win64.zip
下载替换,再次运行搞定