WebDriverException:消息:“chromedriver"可执行文件需要在 PATH 中,同时通过 Selenium Chromedriver python 设置 UserAgent
问题描述
我是网络抓取的新手,我正在尝试使用以下代码来修改我的用户代理:
I'm a newbie in webscraping, I'm trying to modify my user agent using these lines :
from selenium import webdriver
chrome_path = r'C:UsersDesktopchromedriver_win32chromedriver.exe'
driver = webdriver.Chrome(chrome_path)
options = webdriver.ChromeOptions()
options.add_argument('user-agent = Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36')
driver = webdriver.Chrome(chrome_options=options)
环境变量中的路径没有问题,但我一直收到此错误消息:
The path in environment variable is ok but I keep having this error message:
File "C:UsersAppDataLocalProgramsPythonPython36-32libsite-packagesseleniumwebdrivercommonservice.py", line 76, in startstdin=PIPE)
File "C:UsersAppDataLocalProgramsPythonPython36-32libsubprocess.py",line 709, in __init__restore_signals, start_new_session)
File "C:UsersAppDataLocalProgramsPythonPython36-32libsubprocess.py",line 997, in _execute_child startupinfo).
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:UserssafiaAppDataLocalProgramsPythonPython36-32Test 3- User Agent.py", line 9, in <module>
driver = webdriver.Chrome(chrome_options=options)
File "C:UserssafiaAppDataLocalProgramsPythonPython36-32libsite-packagesseleniumwebdriverchromewebdriver.py", line 68, in __init__
self.service.start()
File "C:UserssafiaAppDataLocalProgramsPythonPython36-32libsite-packagesseleniumwebdrivercommonservice.py", line 83, in start
os.path.basename(self.path), self.start_error_message)
selenium.common.exceptions.WebDriverException: Message: 'chromedriver' executable needs to be in PATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home
你能帮我解决这个问题吗?
Can you please help me fix this issue?
解决方案
这个错误信息...
selenium.common.exceptions.WebDriverException: Message: 'chromedriver' executable needs to be in PATH
...暗示 ChromeDriver 在 环境变量 内的 PATH 变量中指定的位置中找不到.
...implies that the ChromeDriver was not found within the locations specified within PATH variable within Environment Variables.
您需要传递 Key executable_path 以及 Value 引用 ChromeDriver 的绝对路径连同 ChromeOptions 对象作为参数,同时初始化 WebDriver 和 WebBrowser,如下所示:
You need to pass the Key executable_path along with the Value referring to the absolute path of the ChromeDriver along with the ChromeOptions object as an argument while initializing the WebDriver and WebBrowser as follows :
from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_argument('user-agent = Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36')
driver = webdriver.Chrome(chrome_options=options, executable_path=r'C:UsersDesktopchromedriver_win32chromedriver.exe')
driver.get('https://www.google.co.in')
相关文章