Я пытаюсь войти в facebook с запросами python. Когда я запускаю следующий код: запросов на импортКак включить файлы cookie с запросами python
def get_facebook_cookie():
sign_in_url = "https://www.facebook.com/login.php?login_attempt=1"
#need to post: email , pass
payload = {"email":"[email protected]", "pass":"xxxxx"}
headers = {"accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8", "user-agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.132 Safari/537.36"}
s = requests.Session()
r1 = s.get(sign_in_url, headers = headers, timeout = 2)
r = s.post(sign_in_url, data = payload, headers = headers, timeout = 2, cookies = r1.cookies)
print r.url
text = r.text.encode("ascii", "ignore")
fbhtml = open("fb.html", "w")
fbhtml.write(text)
fbhtml.close()
return r.headers
print get_facebook_cookie()
(обратите внимание на URL-адрес должен перенаправлять facebook.com-- еще не делает этого)
facebook возвращает следующую ошибку:
(электронная почта фактически заполняются в почтовом ящике - так что я знаю, что это проходит его по крайней мере)
Согласно запросам сеанс доку что он обрабатывает все файлы cookie, поэтому я даже не думаю, что мне нужно его пропускать. Однако я видел, как другие делали это в другом месте, чтобы заполнить второй запрос пустым файлом cookie, поэтому я дал ему шанс.
Вопрос в том, почему facebook говорит мне, что у меня нет файлов cookie? Есть ли какой-то дополнительный заголовок запроса, который мне нужно передать? Будет ли urllib2 лучшим выбором для чего-то подобного?