首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >selenium.common.exceptions.WebDriverException:消息:使用ChromeDriverManager和Python的可执行文件需要在路径中

selenium.common.exceptions.WebDriverException:消息:使用ChromeDriverManager和Python的可执行文件需要在路径中
EN

Stack Overflow用户
提问于 2022-02-20 06:15:20
回答 3查看 6.1K关注 0票数 1

我试图通过检查堆栈溢出和其他来自互联网的资源来修复上面的错误。但我知道这个错误了。

我也安装了webdriver_manager。但我无法运行密码。

我在用库班图,侏儒。

下面是我的代码:

代码语言:javascript
运行
复制
from selenium import webdriver
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
driver = webdriver.Chrome(ChromeDriverManager().install())

'''from webdriver_manager.chrome import ChromeDriverManager
driver.implicitly_wait(0.5)
from selenium.webdriver.common.keys import Keys
from selenium.webdriver import ActionChains
from selenium.webdriver.common.by import By
import time
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import WebDriverWait
#driver = webdriver.Chrome(ChromeDriverManager().install())'''

driver = webdriver.Chrome()
#driver = webdriver.Chrome(executable_path="/home/halovivek/Documents/Automation/selenium_driver/chromedriver.exe")
#driver = webdriver.Chrome()"
driver.maximize_window()
driver.get("https://www.google.com")

下面是我的错误消息:

代码语言:javascript
运行
复制
/home/halovivek/PycharmProjects/pythonProject/venv/bin/python /home/halovivek/PycharmProjects/pythonProject/Test.py


====== WebDriver manager ======
Current google-chrome version is 98.0.4758
Get LATEST chromedriver version for 98.0.4758 google-chrome
Driver [/home/halovivek/.wdm/drivers/chromedriver/linux64/98.0.4758.102/chromedriver] found in cache
/home/halovivek/PycharmProjects/pythonProject/Test.py:4: DeprecationWarning: executable_path has been deprecated, please pass in a Service object
  driver = webdriver.Chrome(ChromeDriverManager().install())
Traceback (most recent call last):
  File "/home/halovivek/PycharmProjects/pythonProject/venv/lib/python3.9/site-packages/selenium/webdriver/common/service.py", line 71, in start
    self.process = subprocess.Popen(cmd, env=self.env,
  File "/usr/lib/python3.9/subprocess.py", line 951, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/usr/lib/python3.9/subprocess.py", line 1821, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'chromedriver'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/halovivek/PycharmProjects/pythonProject/Test.py", line 16, in <module>
    driver = webdriver.Chrome()
  File "/home/halovivek/PycharmProjects/pythonProject/venv/lib/python3.9/site-packages/selenium/webdriver/chrome/webdriver.py", line 70, in __init__
    super(WebDriver, self).__init__(DesiredCapabilities.CHROME['browserName'], "goog",
  File "/home/halovivek/PycharmProjects/pythonProject/venv/lib/python3.9/site-packages/selenium/webdriver/chromium/webdriver.py", line 90, in __init__
    self.service.start()
  File "/home/halovivek/PycharmProjects/pythonProject/venv/lib/python3.9/site-packages/selenium/webdriver/common/service.py", line 81, in start
    raise WebDriverException(
selenium.common.exceptions.WebDriverException: Message: 'chromedriver' executable needs to be in PATH. Please see https://chromedriver.chromium.org/home


Process finished with exit code 1

请帮我找出解决办法

EN

回答 3

Stack Overflow用户

发布于 2022-02-20 07:40:14

代码语言:javascript
运行
复制
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))

由于可执行路径已经折旧,所以必须在conjuction中使用它们。

票数 1
EN

Stack Overflow用户

发布于 2022-02-20 06:55:39

错误是

代码语言:javascript
运行
复制
DeprecationWarning: executable_path has been deprecated, please pass in a Service object

解决办法是:

代码语言:javascript
运行
复制
s = Service('/home/halovivek/Documents/Automation/selenium_driver/chromedriver.exe')
driver = webdriver.Chrome(service = s)
driver.maximize_window()
driver.get("https://www.google.com")

确保从这里下载最新版本的色度驱动器

导入:

代码语言:javascript
运行
复制
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
票数 0
EN

Stack Overflow用户

发布于 2022-02-20 17:04:09

您需要处理以下几件事情:

解决方案

使用ChromeDriverManager,您可以使用以下代码块:

代码语言:javascript
运行
复制
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager

driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))
driver.maximize_window()
driver.get("https://www.google.com")

下载特定版本的ChromeDriver,可以使用以下代码块:

代码语言:javascript
运行
复制
from selenium import webdriver
from selenium.webdriver.chrome.service import Service

s = Service('/home/halovivek/Documents/Automation/selenium_driver/chromedriver')
driver = webdriver.Chrome(service=s)

备注:如果您使用的是Linux / MAC系统,则需要去掉扩展部分,即.exe,因为它只适用于视窗平台。

参考文献

您可以在以下几个方面找到详细的讨论:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71191801

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档