Selenium-chromeDriver 可执行文件需要在 PATH 中

错误消息:

'chromedriver' executable needs to be in PATH

我正在尝试使用 pycharm 中的硒编写一个脚本,但是出现了上面的错误。

我是新来的硒,是不是铬驱动文件夹中的“硒” If it isn't, where can I find it and add it to the path?

顺便说一下,我尝试在 cmd 中输入“ chromeDriver”,但是它不能被识别为内部或外部命令。

错误如下:

Traceback (most recent call last):
File "C:\Users\sebastian\AppData\Local\Programs\Python\Python35-32\lib\site-packages\selenium\webdriver\common\service.py", line 64, in start
stdout=self.log_file, stderr=self.log_file)
File "C:\Users\sebastian\AppData\Local\Programs\Python\Python35-32\lib\subprocess.py", line 947, in __init__
restore_signals, start_new_session)
File "C:\Users\sebastian\AppData\Local\Programs\Python\Python35-32\lib\subprocess.py", line 1224, in _execute_child
startupinfo)
PermissionError: [WinError 5] Permission denied


During handling of the above exception, another exception occurred:


Traceback (most recent call last):
File "C:/Users/sebastian/PycharmProjects/web/bot.py", line 10, in <module>
browser = webdriver.Chrome("C:/Users/sebastian/desktop/selenium-3.0.1")
File "C:\Users\sebastian\AppData\Local\Programs\Python\Python35-32\lib\site-packages\selenium\webdriver\chrome\webdriver.py", line 62, in __init__
self.service.start()
File "C:\Users\sebastian\AppData\Local\Programs\Python\Python35-32\lib\site-packages\selenium\webdriver\common\service.py", line 76, in start
os.path.basename(self.path), self.start_error_message)
selenium.common.exceptions.WebDriverException: Message: 'selenium-3.0.1' executable may have wrong permissions. Please see https://sites.google.com/a/chromium.org/chromedriver/home


Exception ignored in: <bound method Service.__del__ of <selenium.webdriver.chrome.service.Service object at 0x01EDEAF0>>
Traceback (most recent call last):
File "C:\Users\sebastian\AppData\Local\Programs\Python\Python35-32\lib\site-packages\selenium\webdriver\common\service.py", line 163, in __del__
self.stop()
File "C:\Users\sebastian\AppData\Local\Programs\Python\Python35-32\lib\site-packages\selenium\webdriver\common\service.py", line 135, in stop
if self.process is None:
AttributeError: 'Service' object has no attribute 'process'
385843 次浏览

你可以在这里下载 ChromeDriver: Https://sites.google.com/chromium.org/driver/

那么你有多个 选择:

  • 将它添加到您的系统 path

  • 将它放在与 Python 脚本相同的目录中

  • 直接通过 executable_path指定位置

     driver = webdriver.Chrome(executable_path='C:/path/to/chromedriver.exe')
    

另一种方法是下载并解压缩 chrome 驱动程序,然后在 C: Python 27脚本中放入‘ chromedriver.exe’,然后您就不需要提供驱动程序的路径,只需要

driver= webdriver.Chrome()

会成功的

试试这个:

pip install webdriver-manager
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager


driver = webdriver.Chrome(ChromeDriverManager().install())

另一种方法是下载并解压缩 chrome 驱动程序,然后在 C: Python 27脚本中放入‘ chromedriver.exe’,然后您就不需要提供驱动程序的路径,只需要

driver= webdriver.Chrome()

会成功的

可以证明这也适用于 Python 3.7。

不要在文件路径中包含’. exe’。

例如:

from selenium import webdriver


driver = webdriver.Chrome(executable_path='path/to/folder/chromedriver')

2020年的答案。下面的代码解决了这个问题。许多刚刚接触硒的人似乎必须跨过这一步。 安装铬合金驱动器,并把它放在一个文件夹在您的桌面上。还要确保将 seleniumpython 项目放在与 chrome 驱动程序所在位置相同的文件夹中。

根据您的计算机更改 USER _ NAME 和 FOLDER。

适用于视窗

driver = webdriver.Chrome(r"C:\Users\USER_NAME\Desktop\FOLDER\chromedriver")


用于 Linux/Mac

driver = webdriver.Chrome("/home/USER_NAME/FOLDER/chromedriver")

试试这个:

driver = webdriver.Chrome(ChromeDriverManager().install())