Оставайтесь в системе, используя селен - PullRequest
0 голосов
/ 31 мая 2018

Я пытаюсь войти на http://login.live.com, и оставаться в системе после закрытия браузера, используя маринад и куки.

import pickle
from selenium import webdriver
browser = webdriver.Chrome() 
browser.get('https://login.live.com')
# i do my login here
pickle.dump(driver.get_cookies() , open("login_live.pkl","wb"))
browser.quit()

browser = webdriver.Chrome() 
browser.get('https://google.com')
for cookie in pickle.load(open("login_live.pkl", "rb")):
    driver.add_cookie(cookie)
browser.get('https://login.live.com')

Проблема в том, что после перехода на live.com яне оставайтесь в моей учетной записи.Я выполняю тот же поток вручную (очевидно, без загрузки куки).Не могу понять, что не так, любая помощь будет оценена.

1 Ответ

0 голосов
/ 31 мая 2018

login.live.com является страницей перенаправления, и файлы cookie не связаны с ней.Используйте страницу файлов cookie, т.е. https://account.microsoft.com

Так что при повторной загрузке сеанса загрузите страницу, а затем загрузите файлы cookie -

import pickle
from selenium import webdriver
browser = webdriver.Chrome("./chromedriver") 
browser.get('https://login.live.com')
pickle.dump(browser.get_cookies() , open("login_live.pkl","wb"))
browser.quit()
browser = webdriver.Chrome("./chromedriver") 
browser.get('https://account.microsoft.com')
for cookie in pickle.load(open("login_live.pkl", "rb")):
    browser.add_cookie(cookie)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...