Граббер RSS

Author Роман Чернышов    Category PHP     Tags , , , Комментариев 4 Дата 30 Ноя

grabber rss Граббер RSSПосле нескольких дней напряженной работы, нашел немного времени и решил выложить пример граббера RSS лент написанного на PHP. Времени по прежнему нету, каждая минута на вес золота, поэтому расписывать все в глубочайших подробностях к сожалению нет возможности. По этому расскажу коротко, как написать граббер или парсер за 15 минут.

Да кстати, для чего он нужен? Ну в первую очередь предположим для постоянного наполнения своего сайта свежими новостями, с тематических ресурсов. Хотя это довольно таки спорный момент, все таки не уникальный контент карается фильтрами от ПС. Но бытует убеждение, что при размещении обратной ссылки карать за сие деяние ПС не будут.

Итак поехали, собственно сам скрипт:

$url='http://rche.ru/feed';
$xml = xml_parser_create();     //создаёт XML-разборщик
xml_parser_set_option($xml, XML_OPTION_SKIP_WHITE, 1);  //устанавливает опции XML-разборщика
xml_parse_into_struct($xml, file_get_contents($url), $element, $index); //разбирает XML-данные в структуру массива, все передается в массив $index
xml_parser_free($xml);  //освобождает XML-разборщик
 
// печать новостей из ленты
 
for ($i=0; $i < count($index);$i++){
 
$title=$element[$index["TITLE"][$i]]["value"]; // получаем заголовок
$link=$element[$index["LINK"][$i]]["value"]; // получаем ссылку на новость
 
echo "<a href=\"$link\">$title</center></a>";
}

Вот и все, простой граббер RSS лент готов. Теперь можно приделать к этому скелету перекодировку из UTF8, кеширование и прочие премудрости которые значительно улучшат этот мини парсер.

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

4 комментария to “Граббер RSS”

  • Zhuk 17.12.2011 в 11:03 дп

    в последней строке две ошибки с кавычками и несуществующей переменной $titless

    • Роман Чернышов 17.12.2011 в 12:23 пп

      Спасибо. Исправлено. В процессе написания поста немного поторопился))

  • Максим 23.04.2013 в 12:28 пп

    а как написать граббер цен с другого сайта, хочется сделать сравнение моих цен с ценами конкурентов прямо у себя на сайте…

    • Роман Чернышов 04.06.2013 в 12:43 пп

      В рамках данного комментария увы это уже не расписать. Сомневаюсь что для этого подойдет именно граббер RSS, всего скорее тут нужно использовать получение документа по средствам Curl и дальнейший парсинг HTML.

Оставить комментарий

О блоге и авторе

Добро пожаловать на блог веб-разработчика! На протяжении многих лет, начиная с 2009 года, я занимаюсь созданием специализированных сайтов, сервисов и крупных веб-порталов. Мною было создано несколько сотен сайтов, большинство из которых работают на ПО созданном под заказ, а также на готовом ПО которое я разрабатываю на протяжении всего периода моей деятельности. Это: CMS "Совместные покупки", CMS "osRealty", CMS "Спорт прогнозы" и многое другое.

На страницах моего блога вы найдете множество информации о программировании, о появлении новых разработок, сможете ознакомиться с товарами и услугами которые я предоставляю. А также сможете получить консультацию, заказать разработку сайта или приобрести готовое решение, для реализации собственного проекта.

Поиск по блогу
Категории
Архив
Новое на сайте
Блогеры пишут
  • Роман Чернышов: Для работы капчи на PHP 5.6, замените в файле class.captcha.php строку 264 $ifunc( $this -> i [...]
  • Роман Чернышов: Схема такая: 1) На сайте есть виртуальные кошельки (далее ВК) 2) При пополнении пользователем ВК, [...]
  • Александр: Может скрипт комментариев блокирует сообщения с кодом? Или как длинный текст не проходит?
  • Александр: Пытаюсь в который раз здесь показать код, но страница обновляется, и не сообщения, ни любого оповеще [...]
  • Роман Чернышов: Лично у меня интерес к продаже ссылок пропал уже давно. Преимущество сапы, это то - что ссылки можно [...]
Портфолио Все работы


www.detskiy-mir.net
www.detskydoctor.ru
www.betelit.ru
www.all-alliance.ru
www.videogonok.ru
www.carpfishing.by
www.property-greek.com
www.domcons.ru

с 2009 года по сегодняшний день, создано более 300 сайтов...