Форум сайта python.su
Добрый день. Пытаюсь авторизоваться в личном кабинете билайн:
import lxml.html import requests login = '90XXXXXXXX' password = 'password' url = 'https://stavropol.beeline.ru/login/' lk = 'https://stavropolskiy-kr.beeline.ru/customers/products/mobile/profile/' headers = { 'User-Agent':'Mozilla/5.0 (Windows NT 6.0; rv:14.0) Gecko/20100101 Firefox/14.0.1', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'Accept-Language':'ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3', 'Accept-Encoding':'gzip, deflate', 'Connection':'keep-alive', 'DNT':'1' } session = requests.session() data = session.get(url, headers=headers).content page = lxml.html.fromstring(data) form = page.forms[3] form.fields['login'] = login form.fields['password'] = password response = session.post(form.action, data=form.form_values()) print(response.url) final = session.get(response.url, allow_redirects=True) print(final.url)
https://identity.beeline.ru/identity/connect/authorize?scope=openid%20selfservice_identity%20usss_token%20profile&response_type=id_token&client_id=quantumartapp&state=c5206c79522e49048e9f7d20066bb2f8&nonce=fcba28d8071946ac8c831f904aa96b0e&response_mode=form_post&acr_values=fpcc-password%3AEAAAAEIbfGza8MKSPcdFKhjFF9xDe0fdR2fIHCE6LNFb2R45%20fpcc-remember_me%3AFalse%20one_time_password%3AFalse&login_hint=90XXXXXXXX&redirect_uri=https%3A%2F%2Fwww.beeline.ru%2Flogincallback
Офлайн
Надо в браузере посмотреть, какой обмен происходит. Часто через referer такая информация передаётся (что ты заходил туда-то). Поэтому поставь сниффер заголовков на браузер (расширение) и посмотри, какие заголовки пересылаются.
Офлайн
py.user.nextЯ пробовал сниферить wireshark`ом, но трафик зашифрованный. Пробовал запускать dev-консоль в браузере, там черт ногу сломит. API у билайн к личному кабинету нет
Офлайн
yar1kДа, сейчас он бесполезен практически стал. Там можно расшифровать трафик, но это не один день разбираться. А расширений браузера вполне хватает. Надо отловить только основные моменты. Вот у тебя заголовки написаны, их можно не писать так, проверяется обычно только user-agent и referer.
Я пробовал сниферить wireshark`ом, но трафик зашифрованный.
Офлайн
Проделываем то-же самое с my.tele2.ru и получаем на выходе вот такую ссылку:
https://login.tele2.ru/ssotele2/wap/profile?baseUrl=https://login.tele2.ru:443/ssotele2
И если перейти по ней в браузере, то получим занятную формочку:
Где нижняя ссылка выглядит вот так https://login.tele2.ru/ssotele2/wap/auth?serviceId=341&returnUrl=https://my.tele2.ru/, но ведет в: https://my.tele2.ru/?key=оченьмногоРАЗНЫХбуквоцифр
Вот и возникает вопрос: Как вытянуть сей KEY?
import __hello__
Отредактировано delvin-fil (Апрель 20, 2017 20:33:07)
Офлайн
delvin-filРаспарсить (response.txt)
Проделываем то-же самое с my.tele2.ru и получаем на выходе вот такую ссылку:https://login.tele2.ru/ssotele2/wap/profile?baseUrl=https://login.tele2.ru:443/ssotele2И если перейти по ней в браузере, то получим занятную формочку: Где нижняя ссылка выглядит вот так https://login.tele2.ru/ssotele2/wap/auth?serviceId=341&returnUrl=https://my.tele2.ru/, но ведет в: https://my.tele2.ru/?key=оченьмногоРАЗНЫХбуквоцифрВот и возникает вопрос: Как вытянуть сей KEY?
Офлайн
yar1kЧто-то я не нашел его
response.txt
import __hello__
Офлайн