Всем добра.
Авторизуясь в личном кабинете, сохраняю cookie для последующих входов:
from selenium import webdriver
import pickle
import time
chromedriver = 'D:\\temp\\selenium\\chromedriver.exe'
options = webdriver.ChromeOptions()
options.add_argument("user-agent=Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.70 Safari/537.36");
browser = webdriver.Chrome(executable_path=chromedriver, chrome_options=options)
browser.get('https://example.com/login/')
email = browser.find_element_by_id('accountName')
email.clear()
password = browser.find_element_by_id('password')
password.clear()
login = browser.find_element_by_id('submit')
email.send_keys('my_mail')
password.send_keys('my_pass')
login.click()
time.sleep(20)
pickle.dump(browser.get_cookies() , open("cookies.pkl","wb"))
browser.close()
browser = webdriver.Chrome(executable_path=chromedriver, chrome_options=options)
cookies = pickle.load(open("cookies.pkl","rb"))
browser.delete_all_cookies()
for cookie in cookies:
browser.add_cookie(cookie)
browser.get('https://example.com/login/')
В результате получаю эту ошибку:
Traceback (most recent call last):
File "cookie1.py", line 54, in <module>
browser.add_cookie(cookie)
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\se
lenium\webdriver\remote\webdriver.py", line 894, in add_cookie
self.execute(Command.ADD_COOKIE, {'cookie': cookie_dict})
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\se
lenium\webdriver\remote\webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "C:\Users\User\AppData\Local\Programs\Python\Python37\lib\site-packages\se
lenium\webdriver\remote\errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.InvalidCookieDomainException: Message: invalid cookie
domain
(Session info: chrome=78.0.3904.70)
Видна проблема с доменом. Но, как ее решить?