how to make selenium run 'chrome.exe –remote-debugging-port=9222 –user-data-dir='C:\selenium\ChromeProfile'

Question:

I am writing code to make selenium take over an instance of chrome that has all my bookmarks and stuff. So I created a chrome profile and I have the command

chrome.exe --remote-debugging-port=9222 --user-data-dir='C:\selenium\ChromeProfile'

this works when you run it in the python terminal, but I can’t just put it into the code.

I have tried using

import os

os.system("chrome.exe --remote-debugging-port=9222 --user-data-dir='C:\selenium\ChromeProfile'")

but that returns with

Failed To Create Data Directory: Google Chrome cannot read and write to its data directory: CseleniumChromeProfile

Does someone know what I am doing wrong or a command that will run the chrome command to open this specific profile?

My total code so far looks like this

import subprocess
import os
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.chrome.options import Options

os.system("chrome.exe --remote-debugging-port=9222 --user-data-dir='C:\selenium\ChromeProfile'")

chrome_options = Options()
chrome_options.add_experimental_option("debuggerAddress", "127.0.0.1:9222")
chrome_driver = "C:\selenium\chromedriver.exe"
driver = webdriver.Chrome(chrome_driver, chrome_options=chrome_options)
#Print website title to make sure its connected properly
driver.get('https://google.com')
print(driver.title)

search_bar = driver.find_element_by_name('q')
search_bar.send_keys('test')
Asked By: DDUffy

||

Answers:

Nevermind people, I figured it out. I am posting this here for anyone else in the future who may run into the same issue I did where you want python to open the browser in debug mode on the port.

Here is the code

from selenium import webdriver
from selenium.webdriver.chrome.options import Options


chrome_options = Options()
chrome_options.add_argument("--remote-debugging-port=9222")
chrome_options.add_argument('user-data-dir=C:\selenium\ChromeProfile')
chrome_driver = "C:\selenium\chromedriver.exe"
driver = webdriver.Chrome(chrome_driver, chrome_options=chrome_options)

#Print website title to make sure its connected properly
driver.get('https://google.com')
print(driver.title)

search_bar = driver.find_element_by_name('q')
search_bar.send_keys('test')

I had to add two lines of

chrome_options.add_argument()

for some reason it didn’t like when I put them in the same parenthesis.
I hope I help someone in the future.

Answered By: DDUffy

Hi I need your help in this, can you connect with me

Answered By: Vivek