20

我在从 python 中的 selenium 获取 Chrome 浏览器实例时遇到问题。我使用的是 Windows 8。我已经下载了 chromedriver 二进制文件并将其添加到我的路径中,但在 Python 中出现以下错误:

selenium.common.exceptions.WebDriverException: Message: 'ChromeDriver executable needs to be available in the path.   

以下行出现此错误:

driver = webdriver.Chrome(executable_path='path\to\chromedriver_win32_2.0')  
4

7 回答 7

31

两种设置方法,你不知何故混淆了。

  • chromedriver.exe' 的路径放入PATH(在 Windows 上),这样你的PATH设置是正确的,但是你需要调用默认的构造函数。

    driver = webdriver.Chrome()

  • 中指定路径webdriver.Chrome(executable_path='some path')。在这里,您需要可执行文件的完整路径,而不是目录。

    webdriver.Chrome(executable_path=r'C:\Users\HaranKumar\Downloads\chromedriver_win32_2.0\chromedriver.exe')

选择您想要的任何一个。

于 2013-07-04T20:57:15.077 回答
2

假设您的路径是正确的,请确保包含 chromedriver 本身:chromedriver.exe

于 2013-07-03T10:59:19.143 回答
2

我使用了以下,它的工作!谢谢!

driver = webdriver.Chrome(executable_path=r'C:\chromedriver.exe')
#put your own path between the ''
于 2019-03-06T19:27:00.663 回答
0

对于 python(selenium),您将需要:

from selenium import webdriver
from selenium.webdriver import Chrome
from selenium.webdriver.chrome.options import Options

然后将您的 chromedriver.exe 路径放入。“r”只是为了防止它检测到 \ 并在 python 中导致错误

PATH = r"C:\Program Files (x86)\chromedriver.exe"
driver = webdriver.Chrome(PATH)
options = webdriver.ChromeOptions()

您现在可以命令驱动程序获取网站

driver.get('http://www.google.com')
于 2020-12-22T17:04:08.027 回答
0

即使您在 PATH 中有 chromedriver.exe,也必须在您的可执行脚本所在的文件夹中有 chromedriver.exe(至少在涉及 python 脚本时也是如此)

于 2019-03-09T05:18:46.203 回答
0

Python 2021 年更新

我让 Selenium 使用我的个人资料打开我的默认 Chrome 浏览器:

options.add_argument("--user-data-dir=C:\\Users\\Sams\\AppData\\Local\\Google\\Chrome\\User Data")
options.add_argument('--profile-directory=Default')
  1. 转到:铬://版本/
  2. 查找您的“个人资料路径个人资料路径图片
  3. 复制您的配置文件路径并替换“options.add_argument("--user-data-dir={ YOUR PROFILE PATH }")”
  4. 第二个论点也可能看起来不同。我的恰好是“默认”。对于其他可能是“Profile 1”或“Profile X” X 是一个递增的数字。
  5. 运行前关闭所有 Chrome 浏览器。因为 Chrome 驱动程序无法与其他选项卡一起运行自动浏览器。

这是我的整个 Selenium 配置。希望它可以帮助某人。

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import WebDriverWait
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.remote.webdriver import WebDriver
    

options = Options()
options.add_argument("--window-size=1920,1080")
options.add_argument("--log-level=3")
options.add_experimental_option('excludeSwitches', ['enable-logging'])


# The 2 arguments below will use your main browser. 
options.add_argument("--user-data-dir=C:\\Users\\Sams\\AppData\\Local\\Google\\Chrome\\User Data") # profile path (C)
options.add_argument('--profile-directory=Default')

options.headless = False # To show Chrome or not to show?
PATH = (r"C:\Users\Sams\AppData\Local\Programs\Python\Python37-32\Lib\site-packages\selenium\webdriver\chrome\chromedriver.exe") 

CHROMEDRIVER_PATH = PATH
driver = webdriver.Chrome(CHROMEDRIVER_PATH, options=options)
于 2021-04-09T15:17:30.997 回答
-1

2016 年更新

以下解决方案适用于我,使用 WebDriver 3.0.1、Chrome 驱动程序 2.25.426923、Window 7

    System.setProperty("webdriver.chrome.driver","D:\\workspace\\chromedriver.exe");
    WebDriver driver;
    driver = new ChromeDriver();

*笔记:

于 2016-12-07T03:25:14.590 回答