Настраиваем NewsGrabber JC, HTML ленту новостей

Author Автор: Роман Чернышов    Опубликовано: 18 марта 2011

Продолжение статьи по настройке NewsGrabber JC. Дополнение.
Первую основную часть вы можете прочитать тут: Интрукция по настройке NewsGrabber JC для Joomla

В качестве примера возьмем HTML ленту новостей с этого сайта — www.example.ru/poetry/34
При настройке ленты новостей для парсинга в режиме HTML мы проделываем все те же шаги, что и при настройке ленты RSS за исключением последнего десятого шага настройки, а именно настройка вкладки Обработчик.

И так во вкладке Обработчик необходимо выбрать режим работы парсера, т.е. как он будет обрабатывать ленту, как RSS поток или как HTML страницу. Для этого нужно выбрать вкладку HTML, Рис ниже:

1.    Выбираем вкладку HTML и сохраняемся
2.    Прописываем маску отображения ссылок которые нужно искать на странице с анонсами новостей, т.е. на странице http://www.example.ru/poetry/34 имеются новости с линками http://www.example.ru/poetry/163605, но в в коде страницы они прописаны относительно /poetry/163605, и нам необходимо научить парсер собирать такие ссылки и переходить по ним, чтобы в дальнейшем спарсить полную новость. И так, задаем маску такого линка — \/poetry\/\d{6}+  в данном примере мы экранируем все слеши обратным слешем, так же экранируем спец. Символ:  d{6}+  , который обозначает что в ссылке могут стоять любые 6 цифр, и ничего кроме цифр и строго 6.. это делается для того, чтобы парсер не собирал вот такие линки http://www.example.ru/poetry/34/p2 или http://www.example.ru/poetry/34 ведущие не на полную новость а на другие страницы с анонсами.
3.    Можно не задовать поля 2 и 4, а задать только поле 3, в случае если все ссылки на полную новость имеют одинаковый вид, например кнопка «далее», просто указываем парсеру, что он должен переходить только по ссылкам анкор которых – «далее», для этого в поле 3 пишем этот анкор и все.
4.    Собственно префикс ссылки, дело в том как я и написал в пункте 2, ссылки имеют относительный вид  /poetry/163605, и чтобы парсер знал полный урл ссылки мы указываем ему адрес сайта http://www.example.ru
5.    Брать в качестве заголовка название ссылки или же нет, в случае если все ссылки по котором парсер попадает на страницу с полной новостью называются «далее» такой вариант некатит
6.    В ином случае нам нужно указать шаблон заголовка новости, в коде страницы с полной новостью донара мы видим, что заголовок прописан в тегах <h1></h1> соответственно шаблон будет выглядеть <h1[^>]*>.+?<\/h1>

Далее все по схеме с RSS лентами, задаем конечную, начальную точку, сохраняемся, тестируем.

Статья представлена в рамках ознакомления с работой парсера.

1 Comment to “Настраиваем NewsGrabber JC, HTML ленту новостей”

  • Александр 19.03.2011 в 3:49 пп

    Не мешает здесь указать ссылку на первую статью про RSS

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

Автор блога
Чернышов Роман
Роман Чернышов
Веб-разработчик, Full Stack
Senior, Architector
PHP, JavaScript, Python, HTML 5, CSS 3, MySQL, Bash, Linux Admin
Заказать работу
предложить оффер

Последние вопросы
Список вопросов
Последние комментарии
Меню

Archive

Мои проекты
Insurance CMS Love Crm CMS Совместные покупки Мой PHP Framework Хостинг для моих клиентов Лицензии на мой софт и поддержка