0 votes
1 view
in Devops and Agile by (19.8k points)

Error message:

'chromedriver' executable needs to be in PATH

I was trying to code a script using selenium in pycharm, however, the above error occurred. I have already linked my selenium to pycharm as seen here (fresh and up to date).

I am new to selenium, isn't chromedriver in the folder "selenium." If it isn't, where can I find it and add it to the path?

By the way, I tried typing "chromedriver" in cmd, however, it wasn't recognized as an internal or external command.

The error shown below was displayed:

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'

2 Answers

0 votes
by (63.4k points)

You can download the latest ChromeDriver from here: https://sites.google.com/a/chromium.org/chromedriver/downloads

Then follow the steps shown below:

  • Add it to your system path

  • Put it in the same directory where you have your python script

  • Specify the location directly via executable_path like this:

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

For further knowledge, refer to the Selenium tutorial page or go for a fulltime Selenium training and certification.

0 votes
by (31.4k points)

Try to handle this error using python script as shown below:

In command line:

pip install webdriver-manager

Python script:

from selenium import webdriver

from webdriver_manager.chrome import ChromeDriverManager

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

Welcome to Intellipaat Community. Get your technical queries answered by top developers !


Categories

...