С нами с 24.05.09
Сообщения: 1788
Рейтинг: 508
|
Добавлено: 09/10/12 в 16:49 |
Всем привет!
Кто знает php, пожалуйста подскажите, как при помощи curl авторизоваться на my.mail.ru (Мой Мир)?
Вот такой код:
Код: | <?php header('Content-type: text/html; charset=utf-8');
setlocale(LC_ALL, 'ru_RU.utf8');
date_default_timezone_set('Europe/Moscow');
// это нужно заполнить
$login = 'логин@mail.ru';
$password = 'пасс';
$user_agent = 'User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20100101 Firefox/15.0.1';
$ch = curl_init();
curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_COOKIEFILE, dirname(__FILE__) . '/cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEJAR, dirname(__FILE__) . '/cookie.txt');
curl_setopt($ch, CURLOPT_POST, false);
curl_setopt($ch, CURLOPT_URL, "http://swa.mail.ru/cgi-bin/auth?Password=$password&Login=$login");
curl_exec($ch);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
echo curl_setopt($ch, CURLOPT_URL, "http://m.mail.ru/cgi-bin/gosearch?q_read=2&q_folder=all");
$answer = curl_exec($ch);
$matches = array();
preg_match_all('/<span>([^<]+)<\/span>/', $answer, $matches);
foreach ($matches[1] as $value) {
echo $value . '<br />';
}
echo file_get_contents("http://my.mail.ru/");
?> |
- отлично авторизуется на самом Mail.ru, а ниже вывожу страницу Мой Мир (my.mail.ru) - там неавторизован.
Или может есть более простой путь на Мой Мир авторизоваться.
Заранее большое спасибо!
|
|
|
|
С нами с 24.10.04
Сообщения: 18881
Рейтинг: 9010
|
Добавлено: 09/10/12 в 16:51 |
наверное дальнейшие запросы надо делать с авторизованными куками dirname(__FILE__) . '/cookie.txt'
|
|
|
|
С нами с 24.12.10
Сообщения: 478
Рейтинг: 366
|
Добавлено: 09/10/12 в 17:47 |
куки после авторизации сохранились у курла, а запрос к my.mail.ru идет через file_get_contents. надо либо запрос через курл делать, либо добавить куки в file_get_contents
|
|
|
|
Текстовая реклама в форме ответа Заголовок и до четырех строчек текста Длина текста до 350 символов Купить рекламу в этом месте! |