Авторизация в linkfeed

Так как у linkfeed слишком витиеватое айпи, да к тому же отключенное по умолчанию, будем использовать старый надёжный способ парсинга данных с веба:


<?
//Параметры POST запроса
$postdata = array (
'user[login]' => 'Your_login',
'user[password]' => 'Your_pass',
);

//Форматируем данные
foreach ($postdata as $k=>$v) $poststr.="$k=$v&";
$poststr=substr($poststr,0,-1);

//Авотризация и получение кук
$c = curl_init("http://www.linkfeed.ru/user/auth");
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($c, CURLOPT_POST, 1);
curl_setopt($c, CURLOPT_HEADER, 1);
curl_setopt($c, CURLOPT_POSTFIELDS, $poststr);
curl_setopt($c, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1");
$data = curl_exec($c);
curl_close($c);

//Парсим ответ, затем записываем его в массив
$arr=explode("\n",$data);
foreach ($arr as $v) { list($name,$val)=explode(":",$v); $ar[$name]=urldecode(trim($val));}

//Открываем страницу, подставляя полученные куки
$ch = curl_init("http://www.linkfeed.ru/platforms/list");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_COOKIE, $ar['Set-Cookie']);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1");
$datah = curl_exec($ch);
curl_close($ch);

//Достаём из страницы нужные данные
preg_match_all('|<span class="first">(.*)</span><span class="second">(.*)</span><span class="second">(.*)</span>|i',$datah,$res);

//Простая функция очистки от мусора
function clean_lf($str){
$str=str_replace("&nbsp;","",$str);
$str=str_replace("руб.","",$str);
$str=trim($str);
return $str;}

//Вот и появились нужные нам данные статистики за сегодня
$seo=clean_lf($res[2][1]);
$today=clean_lf($res[2][2]);
$ref=clean_lf($res[2][3]);
$all=clean_lf($res[2][4]);

echo "Сегодня: $all, из них рефы $ref и сайты $today";
?>

Все очень просто — отправляем на сайт данные авторизации (логин и пароль), получаем Cookies, и проводим загрузку следующей страницы, используя полученные раньше куки. Ответ парсим и получаем чистые данные — если это нужно. Первоначальный скрипт мне достался от одного программиста, правда у меня он почему-то не начал работать, поэтому пришлось его переписывать и дополнять. Если в Ваших планах частое использование подобного скрипта — то куки лучше сохранить в файл и использовать уже из него, а авторизацию проводить лишь тогда, когда это необходимо. Например, чтобы постоянно не разлогиниваться с сапы, можно вручную выставить время жизни кук на длительное время — так будет гораздо удобней.

Для чего может пригодиться подобный скрипт? Например, Вы можете пройти авторизацию в той же сапе и затем автоматом добавить несколько десятков или сотен своих сайтов. Если Вы будете парсить данные залогинившись в Яндексе, то лимит запросов у Вас повысится (хотя ограничение остается), к тому же у яндекса есть достаточно сервисов, в которые при добавлении информации не требуется ввод капчи. Да и вообще, на любой из сервисов, где нет капчи при авторизации – это различные партнерки, вконтакте, социальные закладки и прочие полезные ресурсы. К сожалению, так же делают и спамеры — комментарии отправляются аналогичным POST запросом.

Можно делать отправку запросов, не проводя авторизации – регистрация LI счётчика, добавление в аддурилку рамблера и т.д. Для того чтобы вручную не тратить много времени на исходный код, можно воспользоваться парсером HTML форм от Jeck.ru. Можно запросы вообще не отправлять, а сразу парсить страницу – кейворды со статистики LI, ключи с WordStat – там всё-таки реальные данные, выдачу с Яндекс.Блогов (там, в наличии есть отличная ссылка на полный текст записи – не надо будет тратить силы на очищение контента – сразу готовый контент) и ещё множество сайтов, которые будут полезны SEOшникам со знанием PHP.

Но с хранением cookies стоит быть аккуратными – зная их, можно полностью управлять Вашим аккаунтом на сайте. Это и было главной целью для XSS-атак – сначала встроить на страницу яваскрипт, затем дождаться того момента, когда на ней появится администратор, заполучить куки, вставить их себе – и ура, Вы прошли авторизацию как администратор. Это уже после, когда вместо надписей «Defased by Федя» стали подкидывать ссылки, а потом и сапу, в строчном порядке начали закрывать эти багги и фильтровать такого рода ссылки (они присутствовали даже на яндексе). Так что надо быть осторожнее!

Тестовый сателлит от Сайтуса прошёл индексацию, 100 страниц из 400 (виноват сам, потому что забыл сделать сайтмап). Выглядит он не очень (вероятно с тематикой – сериалы не повезло),
поэтому попробую, что-то сделать по другой категории. Новостной сайт на старом домене выглядит хорошо, только совсем не индексируется – по всей вероятности, всё дело в домене, хотя он и старый, но наверняка успел попасть в какие то чёрные списки. Вывод: лучше делать на новых доменах. А поднимать тИЦ на старом нет мотивации.

Оказалось, что у меня уже 3 сайта-сервиса: анализ сайтов + генерация сайтмап (тИЦ 110), получение ссылки на скачивания видео с YouTube (посещаемость 100/500 в день, иногда происходят непонятные всплески до 400/1600) а так же конвертер книг для iPod (где книг обработано на полгига).
Все полезны для посетителей, у всех хорошая посещаемость. Только с доходом от них туговато, к сожалению (у всех 1-2 страницы в индексе). Но зато затрат на них, кроме как на их создание нет, а ресурсов они много не потребляют. На данный момент занимаюсь размышлением, о том, как улучшить эти сервисы, а главное – как увеличить число страниц в индексе – чтобы хоть какой то доход с них получить.

Мерчант. Оказалось, что техническая реализация простая, если использовать правильный мануал, а вот что касается прохождения бюрократической машины – совсем другое дело. Во второй раз отклонили заявку. Так что введение автоматической оплаты TopSape, снова откладывается на некоторое время.
[author_infos]

spryt

Несколько слов об авторе spryt

Блог путешественника Андрея, подробно описывающего свои поездки с приложением красочных фотоматериалов. Имеет планы и идеи по поводу дальнейших посещений разных стран. Ведёт активную переписку с посетителями блога, отвечая на волнующие их вопросы.
http://spryt.ru/

Пока молчат

Leave A Reply

You must be logged in to post a comment.