Форум сайта python.su
0
Добрый вечер, пытаюсь авторизоваться на мой круг, через сам moikrug.ru залогиниться не получается поэтому приходиться через pda-passport.yandex.ru/passport?mode=mauth
после этого перехожу на moikrug.ru и запрашиваю содержимое страницы вот что выводит:
window.location.replace(“http\x3A\x2F\x2Fmoikrug\x2Eru\x2F\x3Fncrnd\x3D2221”); Если вы видите эту страницу, это означает что ваш браузер не поддерживает автоматическое перенаправление. Чтобы продолжить, нажмите на эту ссылку.
Кто-нибудь может подсказать как с этим бороться? заранее спасибо, прилагаю код
from grab import Grab g = Grab(log_file='out.html') g.go('http://pda-passport.yandex.ru/passport?mode=mauth') g.set_input("login", "login") g.set_input("passwd", "***") g.submit() g.go("http://moikrug.ru/") print (g.xpath_text('//*'))
Офлайн
Вам нужно самостоятельно обработать этот javascript-код, распарсить URL и перейти по нему.
Офлайн
0
lorienКак именно распарсить URL? пытался с помощью encode, но ничего
Вам нужно самостоятельно обработать этот javascript-код, распарсить URL и перейти по нему.
Офлайн
0
И вообще если честно, я не уверен, что авторизован
Офлайн
0
Это js-редирект. Как уже сказал lorien, парсишь и переходишь.
import re
url = re.findall('replace\(“(.*?)”', g.response.body)
g.go(url)
питон сам преобразует хекс в нормальный вид.
Отредактировано Galvanize (Апрель 13, 2015 09:56:20)
Офлайн
> Как именно распарсить URL? пытался с помощью encode, но ничего
Прочитать статью https://mathiasbynens.be/notes/javascript-escapes
Офлайн
0
Статья не помогла, о чем конкретно вы хотите сказать?
Офлайн
0
Декодировал эту ссылку онлайн парсингом переходил по ней в программе выводило тоже самое
Офлайн
> window.location.replace(“http\x3A\x2F\x2Fmoikrug\x2Eru\x2F\x3Fncrnd\x3D2221”);
> Статья не помогла, о чем конкретно вы хотите сказать?
Я хочу сказать, что у вас есть HTML, в котором есть URL. И в нём некоторые символы закодированы. Я вам дал ссылку на документ, где рассказывается, каким образом в java script могут кодироваться различные символы. В частности, как понять запись “\x3A”
Офлайн
0
Это понятно, но при переходе через эту ссылку мне выводиться это же сообщение. Есть какие-то еще виды авторизации?
Офлайн