PDA

Просмотр полной версии : [Perl] Login Gmail (Вход в Gmail)


apofis
09.04.2010, 18:08
Доброго времени суток!

Сегодня попробовал войти в аккаунт gmail, а получаю ответ, что выключены куки. Т.е. такой ответ:

Your browser's cookie functionality is turned off. Please turn it on.

Код таковой:

use LWP::UserAgent;
use HTTP::Cookies;
my $browser = LWP::UserAgent->new();
$browser->cookie_jar(HTTP::Cookies->new);

$data = [
'ltmpl' => 'default',
'ltmplcache' => '2',
'continue' => 'http://mail.google.com/mail/?',
'rm' => 'false',
'sh' => '-6502655821262978199',
'ltmpl' => 'default',
'ltmpl' => 'default',
'scc' => '1',
'GALX' => 'BzU3YYOdCX8',
'Email' => $email,
'Passwd' => $pass,
'rmShown' => '1',
'signIn' => 'Sign+in',
'asts' => '',
];

$response = $browser->post("https://www.google.com/accounts/ServiceLoginAuth?service=mail", $data)->as_string;

Что не так?

krypt3r
10.04.2010, 02:10
А зачем так? Для работы с gmail модули готовые есть

Fepsis
10.04.2010, 02:15
Что не так?

'sh' => '-6502655821262978199',
'GALX' => 'BzU3YYOdCX8',

полагаю это параметры постоянно меняющиеся.. их нужно парсить со страницы, а потом подставлять...

'signIn' => 'Sign+in', тут не нужен "+" замени его на пробел.. (один раз полчаса из-за этого плюса мудился :( )

apofis
10.04.2010, 07:13
'sh' => '-6502655821262978199',
'GALX' => 'BzU3YYOdCX8',

полагаю это параметры постоянно меняющиеся.. их нужно парсить со страницы, а потом подставлять...

'signIn' => 'Sign+in', тут не нужен "+" замени его на пробел.. (один раз полчаса из-за этого плюса мудился :( )

Да, меняюищиеся. Но я в Мозилле пробовал так: выхожу из аккаунта и снова же повторяю этот post запрос - в аккаунт спокойно входит.
А если в браузере выключить куки, то гугл выдает такую же страницу, что и когда на перле вхожу.


Или же эти параметры как-то вляют на куки? Ну попробую сегодня отпарсить их, потом подставить.

Насчет плюса - не усмотрел) он реально не нужен. Но все-таки и так входит.
Вообщем, седня поправлю, потом здесь отпишу.

apofis
15.04.2010, 18:28
Времени не было поработать над этим.
Вот только седня, вообщем, отпарсил эти 2 непостоянные, подставил - и все ок.
После post запроса надо еще перейти на html версию gmail'a.