Что такое парсер (граббер)?

Parser парсер

ПАРСЕР

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

Примеры использования парсеров

Парсеры и грабберы используются в следующих случаях:

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

Как работают парсеры (грабберы)

Они могут писаться на любом языке программирования, где есть поддержка регулярных выражений. Например, на PHP. Кстати, я начал серию уроков по PHP для начинающих, можете ознакомиться хотя бы в общих чертах. Это полезно. Лично я предпочитаю работать с C#, т.к. привык к нему еще с университета.
Сердцем любого парсера является регулярное выражение. Если коротко, то оно представляет собой набор метасимволов, которые служат своего рода маской для поиска информации.
Примеры регулярных выражений вы можете сами найти в интернете, т.к. их синтаксис зависит от конкретного языка программирования.

Теперь вы знаете что такое парсет и граббер и сможете рассказать об этом друзьям при необходимости ;)

Комментарии:

  1. Лысенко Евгений — 16.05.2012 09:26

    +10 к Карме Сергей за пост. Слышал о грабберах, но в суть не вдавался, а теперь и моя копилка знаний пополнилась.

  2. myblaze — 16.05.2012 11:36

    Не за что :) Просто недавно сам писал парсер для одного проекта, вот и решил написать о термине, думаю интересно будет читателям )

  3. Stas — 24.08.2013 02:13

    Как ими пользоваться, как их писать? Ето большая ЖОПА, я думал php мне легче удастся изучить, а тут столько непонятной фигни!!!!!!!!! Хотя все ето и полезно, я так понял C++ ето тоже веб-программирование? Мне еë тоже изучать?

  4. myblaze 25.08.2013 07:09

    C++ не веб программирование. На нем пишут программы для offline использования. Но если есть необходимость в написании таких программ, то лучше учить C#, он сейчас в мейнстриме. Или Java, но советую C#.

  5. Александр — 04.09.2013 08:47

    ИМХО С стоит выучить только за то, что после него всё программирование в целом становится проще и понятней, а там и С++ и С# и php — вообще любой си-подобный язык не составит больших проблем.

  6. Azdar — 16.09.2013 18:37

    Хм, а как на С++ возможно написать парсер, отсеивающий в реальном времени на сайте, с машины пользователя?)
    Тут свои тонкости, хотя в интернетах инфы мало, ибо неэтично xD

  7. мега — 12.12.2013 16:39

    Star дело говорить, согласен с ним!

  8. XelaNimed — 08.10.2014 13:48

    Свое знакомство с парсерами начинал с использования регулярных выражений, но в итоге пришел к парсингу XML. Скорость обработки в десятки, а то и в сотни раз выше чем при использовании RegExp.

  9. Артем — 15.07.2015 22:07

    Вот самый удачный пример парсера — parser-gis.com
    Попробуйте демо-версию и все поймете :) Очень полезная вещь.

Добавить комментарий