Indy-тяжеловесов решил не использовать...
Поскольку нечего делать...
Описание процесса входа (шаг за шагом):
1. Инициализация запроса входа - нажимаем "Вход" на главной странице.
Метод: POST
Куда:
http://login.vk.com/?act=login
Что: "email=ВАШ_ЛОГИН&pass=ВАШ_ПАРОЛЬ&expire=&vk="
Получаем:
1. Cookies (их надо как-то сохранять...)
2. Форму, которая через JS автоматом отправляется (нам придётся её разобрать и отправить самим). Форма следующего содержания:
Код HTML:
<html>
<head>
<meta http-equiv='content-type' content='text/html; charset=windows-1251' />
</head>
<body onload="document.getElementById('l').submit();">
<form id='l' method='post' action='http://vkontakte.ru/login.php'>
<input type='hidden' name='op' id='op' value='slogin' />
<input type='hidden' name='redirect' id='redirect' value='1' />
<input type='hidden' name='expire' id='expire' value='0' />
<input type='hidden' name='to' id='to' value='' />
<input type='hidden' name='s' id='s' value='ТУТ_ДЛИННЫЙ_ХЭШ_ДАННЫХ' />
</form>
</body>
</html>
2. Отправляем форму по назначению.
Метод: POST
Куда:
http://vkontakte.ru/login.php
Что: "op=slogin&redirect=1&expire=0&to=&s=ТУТ_ДЛИННЫЙ_Х ЭШ_ДАННЫХ"
Получаем:
А получаем мы редирект на /profile.php
Не забываем про Cookies... Их надо сохранить...
3. Финал. Идём на главную.
Метод: GET
Куда:
http://vkontakte.ru/profile.php
Что: просто загружаем. Не забываем про Cookies.
Нам надо загрузить /profile.php, чтоб контакт подумал, что мы - тупой браузер. Кстати, нам опять надо разобрать и записать Cookies. А то что-то там такое....
И, да. После всего этого полученный profile.php можно сразу распарсить и получить счётчики.
Всё, мы вошли. С этими Cookies можно спокойно загружать любые страницы. Да, кстати, если нас на первом этапе выкидывает на
http://vkontakte.ru/login.php?m=1&email=ВАШ_ЛОГИН, то мы уже НЕ вошли.
Тут нужно хорошо знать HTTP-заголовки, и уметь парсить HTML.
Кто хочет покопаться в процессе входа самостоятельно, посмотрите на исходник основной страницы vkontakte.ru, и после этого - лог переходов в любом локальном HTTP-proxy (том же
Charles, например...)
Ждите, к утру отлажу версию 0.2, там уже есть счётчики, имя, аватар. Больше пока не успел...