PDA

Просмотр полной версии : c# Помогите с авторизацией на VK


3DDragon
13.10.2009, 08:41
Три дня бьюсь и никак не могу залогиниться на VK аккаунт :(
Прошу помощи.

1. захожу на vkontakte.ru
2. делаю post c данными на login.vk.com
3. login.vk.com отдает 's' параметр и редирект на profile.com, вытягиваю Regex-ом данные
4. попадаю на форму регистрации :(

куки тягаю по запросам контейнером

Dark_Scorpicore
13.10.2009, 08:58
Вообще, не знаю как на C#
Но на PHP можно так.

$mail="";
$pass="";

##Курл, функция отправки гет-запроса серверу с куками
function go($link, $cookie){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$link);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_GET, 1);
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
$otvet = curl_exec($ch);
curl_close($ch);
return $otvet;
}
##Функция граббинга текста(нам пригодится для граббинга Remixsid)
function grab($ist,$txt1,$txt2) {
$start = strpos($ist,$txt1);
$stop = strpos($ist,$txt2,$start+strlen($txt1));
$rez = substr($ist,$start+strlen($txt1),$stop-$start-strlen($txt1));
return $rez;
}

$qwe = implode ('', file('http://login.vk.com/?act=login&success_url=&fail_url=&try_to_login=1&to=&email='.$mail.'&pass='.$pass));
$sid=grab($qwe,'value=\'','\'>');
$cookie='remixap=1; remixlang=3; remixchk=5; remixsid='.$sid;
go('http://vkontakte.ru/profile.php',$cookie);


Надеюсь, хоть немного помог)