Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 8, 2014 15:36:38

dineo
Зарегистрирован: 2014-06-08
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

Странности авторизации vk

Решил побаловаться с urllib, в качестве цели выбрал vk.com. Поставил целью написание бота, авторизующегося на сайте и выводящего, к примеру, список моих друзей. Созрел следующий код:

import urllib 
import urllib2 
url = 'https://login.vk.com/?act=login'
headers = {
    'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
    'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.89 Safari/537.1',
    }
data = {
    'act': 'login',
    'role': 'al_frame',
    'expire': '',
    'capcha_sid': '',
    'capcha_key': '',
    '_origin': 'http://vk.com',
    'ip_h': '0543f2aec4a37d3631',
    'email': '+7**********',
    'pass': '*********************'
    }
data = urllib.urlencode(data)
print data
req = urllib2.Request(url, data, headers)
response = urllib2.urlopen(req)
the_page = response.read()
print the_page
Вроде бы, все просто? Не тут-то было..
Все бы ничего, если бы я не опробовал его с другим своим аккаунтом vk, на котором авторизация стоит по номеру телефона, а не по мылу. В браузере POST-запрос проходит, после чего vk присылает мне ответ, что авторизация удалась. Однако в ответ на посылку от Питона он выдает:
parent.onLoginFailed(4, {email: ‘%2B7*********3’});
Я попробовать поколдовать с кодированием данных в запросе, но тщетно..
Разъясните, пожалуйста, что не так?

Отредактировано dineo (Июнь 8, 2014 16:09:01)

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version