Я устанавливаю сеанс с хромом, в котором необходимо войти на веб-сайт с именем пользователя, паролем и OTP (одноразовым паролем), который отправляется на телефон. OTP предназначен только для браузера, что означает, что если я введу имя пользователя, пароль и OTP в Chrome один раз, в следующий раз он попросит меня ввести только имя пользователя и пароль, а не OTP. Я использую selenium-python для автоматизации этого, и selenium всегда открывает новое окно браузера. Как я могу преодолеть эту ситуацию?
Я попытался сохранить файлы cookie, а затем загрузить их в драйвер, но все еще запрашивал OTP.
# Saved functions are below.
import pickle
# Path = "E:\\Python\\cookies\\cookies.pkl".
def save_cookie(driver, path):
"""
Save cookies in cookies folder.
"""
with open(path, 'wb') as filehandler:
pickle.dump(driver.get_cookies(), filehandler)
def load_cookie(driver,path):
"""
Load cookies from the saved folder.
"""
with open(path, 'rb') as cookiesfile:
cookies = pickle.load(cookiesfile)
for cookie in cookies:
driver.add_cookie(cookie)
# Here is what I'm trying.
from selenium import webdriver
from udf import cookies
import pickle
driver = webdriver.Chrome()
driver.get('https://somewebsite.com/')
cookies.save_cookie(driver,'E:\\Python\\cookies\\cookies.pkl')
cookies.load_cookie(driver, 'E:\\Python\\cookies\\cookies.pkl')
driver.refresh()
Мне все еще нужно отправить OTP для браузера Chrome.