Регистрация почты gmail.com

by SeoCoder on Ноябрь 19, 2008

Гугл опять что-то меняет. Никак не могу написать регалку для сабжевого мыла. Копирую заголовки один в один с браузера, приходит назад такая же заполненная страница и всё тут. Спалите кто-нибудь рабочий вариант. :)

Логика регистрации сейчас простая. Идем на http://mail.google.com/mail/signup включая handleredirects, сохраняем последний урл для поста, показываем капчу, беря ее адрес с html кода страницы, она будет выглядеть типа так: Капча

Далее отправляем post запрос с такими полями:


Sdata:=Sdata+'type=2';
Sdata:=Sdata+'&loc=RU';
Sdata:=Sdata+'&dsh='+GetField(html, 'dsh');
Sdata:=Sdata+'&ktl=';
Sdata:=Sdata+'&ktf=';
Sdata:=Sdata+'&FirstName='+GenAccount;
Sdata:=Sdata+'&LastName='+GenAccount;
Sdata:=Sdata+'&UsernameSelector=header';
Sdata:=Sdata+'&Email='+GenAccount;
Sdata:=Sdata+'&edk=gmail.com';
p:=GenPassword;
Sdata:=Sdata+'&Passwd='+p;
Sdata:=Sdata+'&PasswdAgain='+p;
Sdata:=Sdata+'&PersistentCookie=no';
Sdata:=Sdata+'&rmShown=1';
Sdata:=Sdata+'&smhck=1';
Sdata:=Sdata+'&nshk=1';
Sdata:=Sdata+'&selection=ownquestion';
Sdata:=Sdata+'&ownquestion='+GenAccount;
Sdata:=Sdata+'&IdentityAnswer='+GenPassword;
Sdata:=Sdata+'&SecondaryEmail=';
Sdata:=Sdata+'&newaccounttoken='+GetField(html, 'newaccounttoken');
Sdata:=Sdata+'&newaccounturl='+httpencode(GetField(html, 'newaccounturl'));
Sdata:=Sdata+'&newaccounttoken_audio='+GetField(html, 'newaccounttoken_audio');
Sdata:=Sdata+'&newaccounturl_audio='+httpencode(GetField(html, 'newaccounturl_audio'));
Sdata:=Sdata+'&newaccountcaptcha='+Edit1.Text;
Sdata:=Sdata+'&program_policy_url='+httpencode('http://mail.google.com/mail/help/intl/ru/program_policies.html');
Sdata:=Sdata+'&privacy_policy_url='+httpencode('http://www.google.com/intl/ru/privacy.html');
Sdata:=Sdata+'&requested_tos_location=undefined';
Sdata:=Sdata+'&requested_tos_language=ru';
Sdata:=Sdata+'&served_tos_location=RU';
Sdata:=Sdata+'&served_tos_language=ru';
Sdata:=Sdata+'&submitbutton=I+accept.+Create+my+account.';

Не забываем указать рефер и заголовки как отдает браузер. Вообщем все это не дает желаемого результата. :(

P.S. Да уж, с LiveWriter код нормально не опубликовать, сцуко.

{ 1 trackback }

Регистрация почты gmail.com - попытка номер 2 — SeoCoder
11.20.08 at 11:18 пп

{ 17 comments… read them below or add one }

1 Mmmm 11.20.08 at 12:43 дп

Хм. А когда капчу запрашиваешь - какие параметры передаешь?.. куки, и т.д. и т.п.?.. все учитывается?
и браузер когда грузит страницу основную - не получает ли случаем паралельно какие-нить куки, при загрузке яваскриптов например?..
И еще, яваскриптом - не удаляются ли какие-нить куки, выставленные при загрузке страницы?.. :)

2 SeoCoder 11.20.08 at 12:50 дп

да с теме же куками и теме же хидерами, что получали страницу - получаем и капчу
яваскрипты дополнительные не нужны - их не грузим. там только грузится на чек доступного имени, но оно нафиг не надо - без него руками регится.

3 Mmmm 11.20.08 at 12:53 дп

Кстати, “показываем капчу” - это как это? Просто, в сгенеренную хтмл страницу, прописываешь имг срц=гугел.ком/аккаунтс/блабла ? так чтоли?
Если так, то я не удивлен, что ничего не будет работать… :)

4 Mmmm 11.20.08 at 12:56 дп

Про капчу понятно.
Только я в первом коменте имел ввиду что:
Браузер:
1. грузим страницу.
2. получаем куки в хттп ответе.
3. получаем куки в яваскриптом. (возможно).
4. грузим сторонние яваскрипты, паралельно - в хттп ответе - могут соваться куки.
5. могут удаляться…

а, ну и еще. Если это курл - то настоятельно рекомендую включить verbose, и проверить в логах, что именно отправляется, какие хедеры по крайней мере… потому что курл сука, любит вставлять всякую херню, ненужную в хедеры…

5 SeoCoder 11.20.08 at 12:59 дп

Какой еще такой курл ))
я еще раз говорю уходит также все один в один как и руками браузером.
Мистико.

6 SeoCoder 11.20.08 at 1:00 дп

Тут мы не теорией занимаемся ;) А решаем практические задачи.
Возьми проснифь браузер, многие вопросы отпадут.

7 Mmmm 11.20.08 at 1:22 дп

Ну, пока необходимости снифать браузер на предмет регистрации гмыл - нет особой.. Но вот опыт снифать и создавать скриптовые “браузеры” - достаточно большой… поэтому так и написал слету. :)

Кстати. А попробуй проверить софт на плагине Bad Behaviour. Возможно там и увидишь какой-нить косяк… :)

8 SeoCoder 11.20.08 at 1:23 дп

я не пишу на PHP

9 Mmmm 11.20.08 at 1:26 дп

И это.. :) Не пробовал, запрос с уже заполненой капчей - отправлять через минуту например после получения картинки капчи?.. :) Ибо, ну нереально заполнить ту форму за пару секунд… :)

10 Mmmm 11.20.08 at 1:27 дп

Говоря про Bad Behaviour - я не имел ввиду писать на пхп. :)
Это плагин для вордпресса в частности того же. Тоесть, попробуй позаполнять формы своим софтом на вордпрессе, с этим плагином..

11 SeoCoder 11.20.08 at 1:29 дп

ну руками я быстро заполнял - не более 10 секунд - тут что-то другое

12 Mmmm 11.20.08 at 1:36 дп

Возможно. :)
Вобщем, я бы делал так:
1. увеличил паузу в отправке формы, следил бы за экспайрами куки, и параметрами - есть же куки которые только по хттпс уходят…
2. Сделал бы тестовый запрос на свой сервер, проверить что именно приходит с постом. особенно хедеры..
3. более детально искал бы различия в отправляемых данных. Вплоть до того, что дернул бы всю страницу, с картинками, яваскриптами и прочим, и посмотрел бы за заголовками.

Удачи! :)
Надеюсь, что смог натолкнуть на мысль. :)

13 Tyler 11.20.08 at 6:52 пп

на Делфях пишешь?
как по мне то нужно имитировать браузер максимально, даже если не хочется тянуть яваскрипты и картинки, все равно тянуть все как браузер и с соответствующими заголовками.
ну и как сказал выше Mmmm - паузы, может сейчас они на это внимания и не обращают, но перестраховаться на будущее стоит.
Я в ближайшие пару дней постараюсь свои эксперименты провести и отписаться.

Ну и главное помнить: нет ничего невозможного :)

14 SeoCoder 11.21.08 at 1:26 пп

Как и говорил я - это лишнее, причины написаны вчера в посте )

15 slitno 11.24.08 at 2:33 пп

Попробуй еще отправлять запросы, на загрузку картинок и js файлов… скорее всего есть какой-нибудь javascript сценарий, который должен выполниться… или картинка, которая должна обязательно подгрузиться!

16 KN 12.01.08 at 10:34 пп

Очень интересно

karimnazaroff@gmail.com

17 informin 12.18.08 at 8:50 пп

Получилось? Тоже мучаюсь не первый день, не могу найти подводный камень (

Leave a Comment

You can use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>