Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 3, 2014 23:33:57

polin11
Зарегистрирован: 2013-05-02
Сообщения: 58
Репутация: +  0  -
Профиль   Отправить e-mail  

Авторизация на сайте

Помогите гугление не помогло. Нужно авторизоваться на сайте, допустим mail.ru
под известными -правильными учетными данными логин - “1234@mail.ru”, пароль -“1234”.
Пробовал

import requests
from requests.auth import HTTPDigestAuth
url = 'https://mail.ru'
r=requests.get(url, auth=HTTPDigestAuth('1234@mail.ru', '1234'))
print(r.url)
#выводит https://mail.ru

Либо
r = requests.get('https://mail.ru', auth=('1234@mail.ru', '1234'))
print(r.url)
#выводит https://mail.ru

Как понять прошла ли успешная авторизация. Буду рад любой помощи. Спасибо.

Офлайн

#2 Окт. 5, 2014 20:42:13

Nata
От:
Зарегистрирован: 2010-10-02
Сообщения: 87
Репутация: +  6  -
Профиль   Отправить e-mail  

Авторизация на сайте

наверное, придется искать “Неверное имя пользователя или пароль. Проверьте правильность введенных данных.” в r.text
:D
( ну и до этого чтоб r.status_code был 200, разумеется )



Отредактировано Nata (Окт. 5, 2014 20:43:08)

Офлайн

#3 Окт. 8, 2014 00:26:55

bs0d
Зарегистрирован: 2014-02-01
Сообщения: 76
Репутация: +  2  -
Профиль   Отправить e-mail  

Авторизация на сайте

polin11
во-первых дайджест авторизация - не то, что Вам надо
во-вторых данные надо передавать пост-запросом вида:

s = requests.Session()
postdata = {'Login': 'email', 'Password': 'passwd'}
r = s.post('https://e.mail.ru/login', data=postdata)
ну и дальше - по обстоятельствам. посмотреть запросы можно через tamperdata, firebug, charles, fiddler… wireshark на худой конец.
задачи такого рода решаются быстро в личке через электронные платежные системы

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version