Поиск по тегу: dudecurl

Апалка объявлений на кубань.ру

11.09.2009, 14:20

Тэги: dudecurl, php, web

Всем колхозникам посвящается.

Попросили меня как-то подать объявления на форум местный, но темы там быстро уходят в /dev/null и их постоянно надо апать, чтобы у людей мелькало перед глазами.

Руками заходить каждые несколько минут и писать «up!» — это не для нас, ведь?

Отличный повод заюзать DudeCurl, подумал я :) (дуд, с тебя 1000$, постпроплачен ^_^)

Вобщем, подключаем всеми нами любимый дуд курл, заводим тестовый файл с ID топика на каждой строчке, пишем пару строк кода и ставим на крон.

// подключаем дуд курл include_once(dirname(__FILE__) . '/DudeCurl.php'); // считываем ID-ы топиков $topics = file(dirname(__FILE__) . '/topics.txt'); // ваши авторизационные данные $login = 'login'; $password = 'password'; // урл страницы форма (надо, чтобы вытащить некий «kodun» для авторизации) $url = 'http://forums.kuban.ru/forum/index.php'; // урл авторизации $login_url = 'http://forums.kuban.ru/forum/login_new.php'; // урл постинга $post_url = 'http://forums.kuban.ru/forum/posting_new.php?page=1'; // пошли по всем топикам foreach ($topics as $topic_id) { $topic_id = intval(trim($topic_id)); // если еще не авторизовались, то делаем это if (!isset($curl)) { $curl = new DudeCurl($url); $html = $curl->exec(); preg_match('#kodun" type="hidden" value="(.*?)"#i', $html, $m); if (!isset($m[1])) { die('can\'t find kodun :('); } $kodun = $m[1]; $auth = array("username"=>$login,"password"=>$password, "kodun"=>$kodun); $curl->init($login_url); $curl->post = $auth; $curl->exec(); } // постим сообщение $data = array("visible_mail"=>'OFF', "message"=>'up!', "kodun"=>$kodun, "add_post"=>$topic_id); $curl->init($post_url); $curl->post = $data; $curl->exec(); // эту тему мы апнули print 'http://forums.kuban.ru/forum/viewtopic_new.php?t=' . $topic_id . '<br/>'; // т.к. на этом мегафоруме стоит антифлуд, то мы немного посмпим sleep(rand(35,40)); }

Исходнички + DudeCurl 0.2.5 Beta

Всем кубаньрушникам привет! :)