selenium.common.exceptions.WebDriverException:消息:将 find_element_by_id Selenium 与 ChromeDriver 一起使用时出现 chrome 无法访问错误
selenium.common.exceptions.WebDriverException: Message: chrome not reachable error while using find_element_by_id Selenium with ChromeDriver
这里是 html 代码:
< input class="form-control input-lg input auto-complete" id="ymMsgInput" type="text" placeholder="Type your message ..." autocomplete="off" >
代码:
i = s.find_element_by_id("ymMsgInput");
Python - Selenium Chrome 网络驱动程序错误:
Traceback (most recent call last):
File "<pyshell#19>", line 1, in <module>
i = s.find_element_by_id("ymMsgInput");
File "C:\Users\vishn\AppData\Local\Programs\Python\Python36-32\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 351, in find_element_by_id
return self.find_element(by=By.ID, value=id_)
File "C:\Users\vishn\AppData\Local\Programs\Python\Python36-32\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 955, in find_element
'value': value})['value']
File "C:\Users\vishn\AppData\Local\Programs\Python\Python36-32\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 312, in execute
self.error_handler.check_response(response)
File "C:\Users\vishn\AppData\Local\Programs\Python\Python36-32\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: chrome not reachable
(Session info: chrome=65.0.3325.146)
(Driver info: chromedriver=2.36.540470 (e522d04694c7ebea4ba8821272dbef4f9b818c91),platform=Windows NT 10.0.16299 x86_64)
您的异常与查找元素无关。 Selenium 无法联系 Chrome。你可以做几件事。
Downgrade/upgrade 您的 chrome 驱动程序基于您的 selenium 版本。
将 --no-sandbox 传递给 chrome 选项。
chrome_options.add_argument('--no-sandbox')
chrome = webdriver.Chrome('/usr/local/bin/chromedriver', chrome_options=chrome_options)
错误说明了一切:
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: chrome not reachable
在用户使用的二进制文件之间 版本兼容性 的情况下会出现此错误,但绝对不是你的情况:
- 使用chrome驱动程序=2.36
- 使用chrome=65.0
Selenium 版本未知
chromedriver=2.36 的发行说明清楚地提到:
Supports Chrome v65-66
但是,自从最新的 Chrome 驱动程序 2.36 发布以来,用户一直面临着问题。这是主题之一:
根本原因与提交有关:
-
因此,一些可能的解决方案是:
使用Chrome选项 Class最大化浏览器。
- 删除选项
disable-infobars
一个例子:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = Options()
options.add_argument("start-maximized")
driver = webdriver.Chrome(chrome_options=options, executable_path=r'C:\path\to\chromedriver.exe')
driver.get('https://www.google.co.in')
print("Page Title is : %s" %driver.title)
如果您的问题仍然存在,请考虑以下事项:
- 将 Selenium Python 客户端 升级到当前级别 Version 3.10.0。
- 将Chrome驱动程序升级到稳定ChromeDriver v2.35级别。
- 将 Chrome 版本保持在 Chrome v64.x 级别。 (as per ChromeDriver v2.35 release notes)
- 清理您的项目工作区通过您的IDE和重建你的项目只需要依赖。
- 使用 CCleaner 工具清除执行 测试套件 .
前后的所有 OS 琐事
- 如果你的基础Chrome版本太旧,那么通过Revo Uninstaller卸载它并安装最新的GA和发布版本Chrome.
- 执行你的
Test
.
这里是 html 代码:
< input class="form-control input-lg input auto-complete" id="ymMsgInput" type="text" placeholder="Type your message ..." autocomplete="off" >
代码:
i = s.find_element_by_id("ymMsgInput");
Python - Selenium Chrome 网络驱动程序错误:
Traceback (most recent call last):
File "<pyshell#19>", line 1, in <module>
i = s.find_element_by_id("ymMsgInput");
File "C:\Users\vishn\AppData\Local\Programs\Python\Python36-32\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 351, in find_element_by_id
return self.find_element(by=By.ID, value=id_)
File "C:\Users\vishn\AppData\Local\Programs\Python\Python36-32\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 955, in find_element
'value': value})['value']
File "C:\Users\vishn\AppData\Local\Programs\Python\Python36-32\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 312, in execute
self.error_handler.check_response(response)
File "C:\Users\vishn\AppData\Local\Programs\Python\Python36-32\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: chrome not reachable
(Session info: chrome=65.0.3325.146)
(Driver info: chromedriver=2.36.540470 (e522d04694c7ebea4ba8821272dbef4f9b818c91),platform=Windows NT 10.0.16299 x86_64)
您的异常与查找元素无关。 Selenium 无法联系 Chrome。你可以做几件事。
Downgrade/upgrade 您的 chrome 驱动程序基于您的 selenium 版本。
将 --no-sandbox 传递给 chrome 选项。
chrome_options.add_argument('--no-sandbox') chrome = webdriver.Chrome('/usr/local/bin/chromedriver', chrome_options=chrome_options)
错误说明了一切:
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: chrome not reachable
在用户使用的二进制文件之间 版本兼容性 的情况下会出现此错误,但绝对不是你的情况:
- 使用chrome驱动程序=2.36
- 使用chrome=65.0
Selenium 版本未知
chromedriver=2.36 的发行说明清楚地提到:
Supports Chrome v65-66
但是,自从最新的 Chrome 驱动程序 2.36
根本原因与提交有关:
-
因此,一些可能的解决方案是:
使用Chrome选项 Class最大化浏览器。
- 删除选项
disable-infobars
一个例子:
from selenium import webdriver from selenium.webdriver.chrome.options import Options options = Options() options.add_argument("start-maximized") driver = webdriver.Chrome(chrome_options=options, executable_path=r'C:\path\to\chromedriver.exe') driver.get('https://www.google.co.in') print("Page Title is : %s" %driver.title)
如果您的问题仍然存在,请考虑以下事项:
- 将 Selenium Python 客户端 升级到当前级别 Version 3.10.0。
- 将Chrome驱动程序升级到稳定ChromeDriver v2.35级别。
- 将 Chrome 版本保持在 Chrome v64.x 级别。 (as per ChromeDriver v2.35 release notes)
- 清理您的项目工作区通过您的IDE和重建你的项目只需要依赖。
- 使用 CCleaner 工具清除执行 测试套件 . 前后的所有 OS 琐事
- 如果你的基础Chrome版本太旧,那么通过Revo Uninstaller卸载它并安装最新的GA和发布版本Chrome.
- 执行你的
Test
.