def get_cookies(d: WebDriver) -> WebDriver:
"""Сохранение или получение cookies.
"""
COOKIES_DIR.mkdir(exist_ok=True)
if path.exists(COOKIES_FILE):
d.get(URL)
with open(COOKIES_FILE, 'rb') as file:
for cookie in pickle.load(file):
d.add_cookie(cookie)
d.refresh()
logger.info('Cookies добавлены к драйверу.')
return d
d.get(URL + URL_LOGIN)
_wait(d, By.XPATH, login_by_password)
d.find_element(By.XPATH, login_by_password).click()
_wait(d, By.XPATH, login_input_username)
d.find_element(By.XPATH, login_input_username).send_keys(LOGIN)
d.find_element(By.XPATH, login_input_password).send_keys(PASSWORD)
d.find_element(By.XPATH, login_submit).click()
_wait(d, By.XPATH, mainmenu_my_resumes)
if _wait(d, By.XPATH, account_login_error):
raise LoginOrPasswordErrorException
with open(COOKIES_FILE, 'wb') as file:
pickle.dump(d.get_cookies(), file)
logger.info('Cookies записаны в файл.')
return d
with open(COOKIES_FILE, 'wb') as file:
pickle.dump(driver.get_cookies(), file)
if path.exists(COOKIES_FILE):
driver.get(URL)
with open(COOKIES_FILE, 'rb') as file:
for cookie in pickle.load(file):
driver.add_cookie(cookie)
driver.refresh()