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)
"""