繁体   English   中英

selenium.common.exceptions.WebDriverException:消息:未知错误:无法使用带有Selenium Python的ChromeDriver Chrome创建Chrome进程

[英]selenium.common.exceptions.WebDriverException: Message: unknown error: Failed to create Chrome process with ChromeDriver Chrome with Selenium Python

我正在尝试使用 selenium 单击一个按钮,因此我使用 xpath 找到了该元素,因为我找不到 id 。 编辑:我认为其余的代码与它没有任何关系,但我添加了它以防万一

这是代码

import requests
import os
import selenium
from selenium import webdriver
os.system("cls")
print("                                         ")
print("______________     _____________         ________________")
print("| |         | |    |  |       | |        |______________|")
print("| |________ //     |  |  __   | |               | |")
print("| |________ \\\\     |  | |__|  | |               | |")
print("| |          | |   |  |       | |               | |")
print("| |__________| |   |__|_______|_|               |_|")

print("\u001b[34m Welcome To Movie Downloader")
print("\u001b[31m Please Make Sure To Not Put Every First Letter In Every Word Capital And Also Make Sure To Put Hyphens Instead Of Spaces Between Words, Also Put The Date The Movie Was Made")
print("\u001b[32m For Example: spider-man-homecoming-2017")


def Bot():
    URL = input("\u001b[34m What Movie Do You Want To Download:\n")
    r = requests.get("https://bila.egy.best/movie/" + URL + "/?ref=search-p1")
    if r.status_code == 200:
        print("\u001b[32m The Url Is Valid | Movie Has Been Found")
    else:
        print("\u001b[31m The Url Is Invalid")
    print("\u001b[0m")
    driver = webdriver.Chrome(executable_path=r'C:\chromedriver.exe')
    driver.get("https://bila.egy.best/movie/" + URL + "/?ref=search-p1")
    driver.find_element_by_xpath("//*[@id=watch_dl]/table/tbody/tr[2]/td[4]/a[1]").click()
Answer = input("Would You Like To Bot?")
if Answer == "Yes" or "yes" or "sure" or "Sure":
    Bot()

这是错误

Traceback (most recent call last):
  File "Movie_Download.py", line 32, in <module>
    Bot()
  File "Movie_Download.py", line 27, in Bot
    driver = webdriver.Chrome(executable_path="C:\chromedriver.exe")
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64\lib\site-packages\selenium\webdriver\chrome\webdriver.py", line 81, in __init__
    desired_capabilities=desired_capabilities)
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 157, in __init__
    self.start_session(capabilities, browser_profile)
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 252, in start_session
    response = self.execute(Command.NEW_SESSION, parameters)
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute
    self.error_handler.check_response(response)
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: unknown error: Failed to create a Chrome process.

您需要注意以下几点:

  • 在传递chromedriver二进制文件的绝对位置时,使用单个正斜杠和原始 ie r开关。 所以有效的代码行将是:

     driver = webdriver.Chrome(executable_path=r'C:\\chromedriver.exe')
  • 非管理员/非 root用户身份执行您的@Test


更新

另一个可能的原因是Chrome未按照规范安装在默认位置:

Chrome_default_location

解决方案

可以有两种方法来解决这种情况:

  • 卸载Chrome并在默认位置重新安装Chrome
  • 使用binary_location属性指向chrome二进制位置。

     from selenium import webdriver from selenium.webdriver.chrome.options import Options options = Options() options.binary_location = "C:/Program Files (x86)/Google/Chrome/Application/chrome.exe" driver = webdriver.Chrome(chrome_options=options, executable_path="C:/Utility/BrowserDrivers/chromedriver.exe", ) driver.get('http://google.com/')

如果您仍然收到此错误,请尝试重新安装 chrome

它对我有用,我遇到了同样的问题,我尝试了所有方法,但仍然无法修复它,但是在我重新安装 Chrome 浏览器后,它起作用了!

你必须编辑

driver = webdriver.Chrome(executable_path="C:\chromedriver.exe")

driver = webdriver.Chrome(executable_path="C:\\chromedriver.exe")

你想念\\

如果出现同样的错误,请尝试以管理员身份运行

或者

chromedriver.exe移动到其他路径,如c:/seleniumdriver/chromedriver.exe"并编辑executable_path

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM