Python Selenium Chrome Webdriver

I’m beginning the automate the boring stuff book and I’m trying to open a chrome web browser through python. I have already installed selenium and

I have tried to run this file:

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys

browser = webdriver.Chrome()
browser.get('https://automatetheboringstuff.com')

But because of that I get this Error:

Traceback (most recent call last):   File "C:Program Files
   (x86)Python36-32libsite-packagesseleniumwebdrivercommonservice.py",
 line 74, in start
     stdout=self.log_file, stderr=self.log_file)   File "C:Program Files (x86)Python36-32libsubprocess.py", line 707, in __init__
     restore_signals, start_new_session)   File "C:Program Files (x86)Python36-32libsubprocess.py", line 990, in _execute_child
     startupinfo) FileNotFoundError: [WinError 2] The system cannot find the file specified

During handling of the above exception, another exception occurred:

Traceback (most recent call last):   File "C:/Program Files
(x86)/Python36-32/test.py", line 5, in <module>
    browser = webdriver.Chrome()   File "C:Program Files (x86)Python36-32libsite-packagesseleniumwebdriverchromewebdriver.py",
line 62, in __init__
   self.service.start()   File "C:Program Files (x86)Python36-32libsite-packagesseleniumwebdrivercommonservice.py",
line 81, 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

Answers:

Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.

Method 1

You need to specify the path where your chromedriver is located.

  1. Download chromedriver for your desired platform from here.
  2. Place chromedriver on your system path, or where your code is.
  3. If not using a system path, link your chromedriver.exe (For non-Windows users, it’s just called chromedriver):
    browser = webdriver.Chrome(executable_path=r"C:pathtochromedriver.exe")

    (Set executable_path to the location where your chromedriver is located.)

    If you’ve placed chromedriver on your System Path, you can shortcut by just doing the following:

    browser = webdriver.Chrome()

  4. If you’re running on a Unix-based operating system, you may need to update the permissions of chromedriver after downloading it in order to make it executable:

    chmod +x chromedriver

  5. That’s all. If you’re still experiencing issues, more info can be found on this other StackOverflow article: Can’t use chrome driver for Selenium

Method 2

Here’s a simpler solution: install python-chromedrive package, import it in your script, and it’s done.

Step by step:
1. pip install chromedriver-binary
2. import the package

from selenium import webdriver
import chromedriver_binary  # Adds chromedriver binary to path

driver = webdriver.Chrome()
driver.get("http://www.python.org")

Reference: https://pypi.org/project/chromedriver-binary/


All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

0 0 votes
Article Rating
Subscribe
Notify of
guest

0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x