Skip to content

Instantly share code, notes, and snippets.

@JeffreyKozik
Created January 28, 2022 02:22
Show Gist options
  • Save JeffreyKozik/c52ae005ee8ef1fbecbe876c0ca358b4 to your computer and use it in GitHub Desktop.
Save JeffreyKozik/c52ae005ee8ef1fbecbe876c0ca358b4 to your computer and use it in GitHub Desktop.
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
from webdriver_manager.chrome import ChromeDriverManager
import sys
import pickle
otp = sys.argv[1]
usecookies = False
if (otp == "usecookies"):
usecookies = True
def save_cookie(driver, path):
with open(path, 'wb') as filehandler:
pickle.dump(driver.get_cookies(), filehandler)
def load_cookie(driver, path):
with open(path, 'rb') as cookiesfile:
cookies = pickle.load(cookiesfile)
for cookie in cookies:
driver.add_cookie(cookie)
driver = webdriver.Chrome(ChromeDriverManager().install())
# ------- 1st website -------
url = "https://exchange.gemini.com/signin"
driver.get(url)
time.sleep(1)
if (usecookies):
load_cookie(driver, 'cookies.pickle')
time.sleep(1)
userId = ""
pwrd= ""
driver.find_element_by_xpath('//input[@data-testid="emailAddressInput"]').send_keys(userId)
driver.find_element_by_xpath('//input[@data-testid="passwordInput"]').send_keys(pwrd)
time.sleep(1)
driver.find_element_by_xpath('//button[@data-testid="submitLoginForm"]').click()
time.sleep(1)
driver.refresh()
if (usecookies == False):
driver.find_element_by_id('input-token').send_keys(otp)
time.sleep(1)
driver.find_element_by_xpath('//button[@data-testid="submit-authy"]').click()
time.sleep(1)
save_cookie(driver, 'cookies.pickle')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment