Задать вопрос
  • Python, requests, как мне войти??

    @alekssamos
    Пашуня,
    Итак. Смотрим инспектор запросов:
    1. Первый запрос нам уже знаком и выглядит он следующим образом:
    Запрос#1
    POST https://www.shararam.ru/h/CommonController?ClientScriptId=CommonController&ContainerId=CommonController00ec6b3e&ClientControlClass=CommonController&DisableDomRendering=false&ExpireMinutes=0 HTTP/1.1
    Host: www.shararam.ru
    User-Agent: Mozilla
    Accept: */*
    Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3
    Accept-Encoding: gzip, deflate, br
    Content-Type: application/x-www-form-urlencoded; charset=UTF-8
    X-Requested-With: XMLHttpRequest
    Referer: https://www.shararam.ru/auth
    Content-Length: 70
    Cookie: _shtm=....; SessionId=.........; _ga=GA..........
    Connection: keep-alive
    
    <post><webmethod>CheckLogin</webmethod><login>ILoveUToo</login></post>

    HTTP/1.1 200 OK
    Server: nginx
    Date: Mon, 25 Jun 2018 17:15:15 GMT
    Content-Type: text/html; charset=utf-8
    Connection: keep-alive
    Vary: Accept-Encoding
    Cache-Control: max-age=0
    Expires: Mon, 25 Jun 2018 17:15:15 GMT
    X-Node: 2
    Content-Security-Policy: frame-ancestors 'self' http://*.vseigru.net http://vseigru.net
    Content-Length: 348
    
    <html><content></content><json><![CDATA[{"type":"datasource", "Result":true,"HasVKBinding":false}]]><![CDATA[{"type":"webparams", "ClientScriptId":"string-CommonController","ContainerId":"string-CommonController00ec6b3e","ClientControlClass":"string-CommonController","DisableDomRendering":"bool-False","ExpireMinutes":"integer-0"}]]></json></html>


    2. Нам предлагают ввести пароль, что мы и делаем. Отправляется второй запрос:
    Запрос#2
    POST https://www.shararam.ru/h/CommonSocialBlock?method=login HTTP/1.1
    Host: www.shararam.ru
    User-Agent: Mozilla
    Accept: */*
    Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3
    Accept-Encoding: gzip, deflate, br
    Content-Type: application/x-www-form-urlencoded; charset=UTF-8
    X-Requested-With: XMLHttpRequest
    Referer: https://www.shararam.ru/auth
    Content-Length: 57
    Cookie: ..............
    Connection: keep-alive
    
    login=ILoveUToo&password=51f3ce72447129b553969d8ab78354ea

    В ответ приходит ok. Так, а что у нас вместо пароля? Похоже на какой-то хеш. А самый распространенный хеш? Ну, например, md5. А давай проверим?
    В Python 3 md5 хеш можно получить следующим образом:
    import hashlib
    myhash = hashlib.md5('shit100'.encode()).hexdigest()
    print(myhash)

    И что получилось? Да, та самая строка, которая передалась в POST запросе.

    Собираем все вместе и получаем такой код:
    import requests
    import hashlib
    
    mysession = requests.session()
    url = "https://www.shararam.ru/h/CommonController?ClientScriptId=CommonController&ContainerId=CommonController49c9e585&ClientControlClass=CommonController&DisableDomRendering=false&ExpireMinutes=0"
    login = "ILoveUToo"
    password = "shit100"
    password_md5 = hashlib.md5(password.encode()).hexdigest()
    resp = mysession.post(url, "<post><webmethod>CheckLogin</webmethod><login>{0}</login></post>".format(login))
    
    url = "https://www.shararam.ru/h/CommonSocialBlock?method=login"
    resp = mysession.post(url, {"login":login, "password":password_md5})
    print(resp.content.decode("UTF8"))
    if resp.content.decode("UTF8") == 'ok':
    	print("SUCCESS!")
  • Python, requests, как мне войти??

    @alekssamos
    Пашуня, Дай мне логин и пароль и я зайду, инспектором данные посмотрю и в скрипт перенесу. Или сам: F12 в браузере и смотри запросы.
  • Кириллица и кодировка в MS-DOS QBasic?

    @alekssamos Автор вопроса
    Тогда получается наоборот.
    Слово "Проверка" выводится, а все остальное - нет
    і                                                                              °
    іPRINT "проверка"                                                              °
    і                                                                              °
    і                                                                              °
    і                                                                              °
    і                                                                              °
    і                                                                              °
    і                                                                              °
    і                                                                              °
    і                                                                              °
    і                                                                              °
    і                                                                              °
    і                                                                              °
    і                                                                              
    і °°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°і
    ГДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД ЌҐ¬Ґ¤«Ґ­­® ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ
    і                                                                              і
    і                                                                              і
     <Shift+F1=‘Їа ўЄ > <F6=ЋЄ­®> <F2=Џ®¤Їа.> <F5=‡ ЇгбЄ> <F8= Ј>і       00001:001
    ” ©«  ђҐ¤ ЄвЁа®ў ­ЁҐ  Џа®б¬®ва  Џ®ЁбЄ  ‡ ЇгбЄ  Ћв« ¤Є   Џ а ¬Ґвал    ‘Їа ўЄ 
    ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД Untitled ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґГДї
    і                                                                              
    і
    і                                                                              °
    і           ЪДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДї      °
    і           і                                                           і      °
    і           і           „®Ўа® Ї®¦ «®ў вм ў MS-DOS QBasic!               і      °
    і           і                                                           і      °
    і           і     Copyright (C) Microsoft Corporation, 1987-1991.       і      °
    і           і                  ‚ᥠЇа ў  § йЁйҐ­л.                      і      °
    і           і                                                           і      °
    і           і< Ќ ¦¬ЁвҐ Enter ¤«п Їа®б¬®ва  ђгЄ®ў®¤бвў  ¤«п ­ зЁ­ ойЁе > і      °


    Ну и так далее.

    То есть он-то сам работает в той кодировке.