PDA

Просмотр полной версии : JavaScript+Delphi


yfet
18.10.2009, 20:41
хочу написать прогу которая будет высылать пароль от контакта на мыло. просмотрел страницу высылки пароля - там сплошной яваскрипт. у кого какие наработки или советы есть - прошу поделиться

Пуховой
18.10.2009, 20:47
yfet, все что нужно - отпарсить запросы, передаваемые браузером, определить динамические параметры, и сымитировать запрос.

yfet
18.10.2009, 21:09
эмм...познания в делфи не столь велики как ваши) нельзя ли post запросом?

POS_troi
18.10.2009, 22:26
Accept-Language: ru,en-us;q=0.7,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest
Referer: http://vkontakte.ru/login.php?op=forgot
Content-Length: 35
Cookie: remixlang=0; remixchk=5; remixclosed_tabs=0; remixsid=nonenone
Pragma: no-cache
Cache-Control: no-cache
op=a_retrieve&email=vasya_pupkin%40bk.ru


делай POST запрос, vasya_pupkin%40bk.ru замени на свое

AquaKlaster
18.10.2009, 23:41
Вот только что написал процедуру для ретрива пароля

procedure TForm1.Retrieve_pass_vk;
var //переменные
Post: TStringList;
IdHTTP: TIdHTTP;
begin
Post := TStringList.Create; //создаем стринглист для пост параметров
IdHTTP := TIdHTTP.Create(); //создаем IdHTTP
IdHTTP.HandleRedirects := True; //включаем редиректы
IdHTTP.Request.UserAgent:=
'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.11) Gecko/2009060215 Firefox/3.0.11 (.NET CLR 3.5.30729)'; //юзер агент другими словами браузер
IdHTTP.Request.Referer:='http://vk.com/login.php?op=forgot'; //с куда пришли
Post.Add('op=a_login_ask'); //первый пост запрос
Post.Add('login=login@yandex.ru');
IdHTTP.Post('http://vk.com/login.php', Post); //отправляем первый пост запрос
Post.Clear; //очищаем стринглист
Post.Add('op=a_retrieve'); //второй пост запрос
Post.Add('email=login@yandex.ru');
IdHTTP.Post('http://vk.com/login.php', Post);//отправляем запрос на ретрив пасса
end;
ЗЫ login@yandex.ru нужно заменить на своё мыло(мыло акка, пасс которого будем ретривить)