Selenium Automation Chrome browser opens and closes with error mesage

Viewed 42

Good Day Ahead. After searching numerious posts in Stackoverflow, I tried to write and implement the automation using selenium and python programming. I tried my first code as below and i am getting error. My browser opens and closes very fast. It throws error in the output.

Code:-

import time
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome.service import Service

s=Service(ChromeDriverManager().install())
chrome_driver = webdriver.Chrome(service=s)

browser = webdriver.Chrome("/home/halovivek/Documents/Automation/selenium_driver/")
browser.implicitly_wait(5)
browser.get("https://www.google.com")
#browser.get("https://kite.zerodha.com/")
browser.implicitly_wait(5)

Error:-

/home/halovivek/PycharmProjects/yearcoding/venv/bin/python /home/halovivek/PycharmProjects/yearcoding/06092022_selenium1.py 
/home/halovivek/PycharmProjects/yearcoding/06092022_selenium1.py:9: DeprecationWarning: executable_path has been deprecated, please pass in a Service object
  browser = webdriver.Chrome("/home/halovivek/Documents/Automation/selenium_driver/")
Traceback (most recent call last):
  File "/home/halovivek/PycharmProjects/yearcoding/venv/lib/python3.10/site-packages/selenium/webdriver/common/service.py", line 71, in start
    self.process = subprocess.Popen(cmd, env=self.env,
  File "/usr/lib/python3.10/subprocess.py", line 966, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/usr/lib/python3.10/subprocess.py", line 1842, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
PermissionError: [Errno 13] Permission denied: '/home/halovivek/Documents/Automation/selenium_driver/'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/halovivek/PycharmProjects/yearcoding/06092022_selenium1.py", line 9, in <module>
    browser = webdriver.Chrome("/home/halovivek/Documents/Automation/selenium_driver/")
  File "/home/halovivek/PycharmProjects/yearcoding/venv/lib/python3.10/site-packages/selenium/webdriver/chrome/webdriver.py", line 69, in __init__
    super().__init__(DesiredCapabilities.CHROME['browserName'], "goog",
  File "/home/halovivek/PycharmProjects/yearcoding/venv/lib/python3.10/site-packages/selenium/webdriver/chromium/webdriver.py", line 89, in __init__
    self.service.start()
  File "/home/halovivek/PycharmProjects/yearcoding/venv/lib/python3.10/site-packages/selenium/webdriver/common/service.py", line 86, in start
    raise WebDriverException(
selenium.common.exceptions.WebDriverException: Message: '' executable may have wrong permissions. Please see https://chromedriver.chromium.org/home


Process finished with exit code 1

Please help me

1 Answers

I don't understand why this line comes

browser = webdriver.Chrome("/home/halovivek/Documents/Automation/selenium_driver/")

After you already properly created webdriver instance with

s=Service(ChromeDriverManager().install())
chrome_driver = webdriver.Chrome(service=s)

?
Looks like your code should be as following:

import time
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome.service import Service

s=Service(ChromeDriverManager().install())
driver = webdriver.Chrome(service=s)

driver.implicitly_wait(5)
driver.get("https://www.google.com")

UPD
To make your browser stay opened add "detach", True option, as following:

import time
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options

chrome_options = Options()
chrome_options.add_experimental_option("detach", True)

s=Service(ChromeDriverManager().install())
driver = webdriver.Chrome(service=s, chrome_options=chrome_options)

driver.implicitly_wait(5)
driver.get("https://www.google.com")
Related