how to get selenium to open a running chrome session

Viewed 22

this is my code... very basic python. the problem i am having is that every time it launches it opens a new chrome session which is not logged in so when i log into the site that i am trying to reach, it asks for an otp. i want to be able to start with an existing browser session. i know there is some way to do this with chrome options but cant seem to figure it out. any help would be appreciated. thanks!

Gmail, password, highprice = "email@gmail.com", "passowrd", "9.99"

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
import schedule
import time
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By





def bot():
    start_time = time.time()
    path=Service("/Users/ahronfriedberg/Documents/chromedriver")
    driver = webdriver.Chrome(service=path)


    driver.maximize_window()
    time.sleep(5)




driver.get('https://sellercentral.amazon.com/skucentral?mSku=QTIP500-FBA&ref=myi_skuc')
time.sleep(30)

try:
    element = WebDriverWait(driver, 1).until(
        EC.element_to_be_clickable((By.XPATH, '//*[@id="ap_email"]')))
except:
    print("Already signed in")
else:
    driver.find_element(By.XPATH, '//*[@id="ap_email"]').send_keys(Gmail)
    driver.find_element(By.XPATH, '//*[@id="ap_password"]').send_keys(password)
finally:
    driver.find_element(By.XPATH, '//*[@id="signInSubmit"]').click()



while True:
    try:
        element = WebDriverWait(driver, 1).until(
            EC.element_to_be_clickable((By.XPATH, '//*[@id="PRICING_CARD"]/div[2]/div/div[1]/div[1]/div[2]/div/div[2]/a[1]')))
    except:
        print("Update button not found")
    else:
        driver.find_element(By.XPATH, '//*[@id="PRICING_CARD"]/div[2]/div/div[1]/div[1]/div[2]/div/div[2]/a[1]').click()
    finally:
        time.sleep(5)



    while True:
        try:
            element = WebDriverWait(driver, 1).until(EC.element_to_be_clickable((By.XPATH, '//*[@id="katal-id-36"]')))
        except:
            print("Price not found")
        else:
            driver.find_element(By.XPATH, '//*[@id="katal-id-36"]').send_keys(highprice)
        finally:
            time.sleep(5)




            while True:
                try:
                    element = WebDriverWait(driver, 1).until(
                        EC.element_to_be_clickable((By.XPATH, '//*[@id="PRICING_CARD"]/div[2]/div/div[1]/div[1]/div[2]/div/div[2]/div/kat-popover/div/a')))
                except:
                    print("Save button not found")
                else:
                    driver.find_element(By.XPATH, '//*[@id="PRICING_CARD"]/div[2]/div/div[1]/div[1]/div[2]/div/div[2]/div/kat-popover/div/a').click()
                finally:
                    time.sleep(10)
                    driver.quit()


schedule.every().day.at('03:38:00').do(bot)
#schedule.every(1).minutes.do(bot)

while True:
           schedule.run_pending()
           time.sleep(1)

"""

0 Answers
Related