Парсер (от английского слова parse – разбор, анализ) – в общем случае, программа или ее часть, выполняющая синтаксический анализ текста. Отвечая на вопрос: “Что такое парсер?” необходимо упомянуть, что этого термина может быть несколько значений. Наиболее часто используются:
Парсер сайтов – программа, собирающая размещенную на сайтах необходимую информацию; выполняющая последовательный синтаксический анализ найденных данных, их преобразование и сохранение.
Парсинг – очень востребованная услуга на специализированных форумах и биржах фрилансеров. Иногда заказчика интересует сама программа, способная собирать в интернете и систематизировать определенную информацию, иногда – сама информация в удобном виде. Обычно полученные таким образом данные используют при необходимости:
Наполнения контентом новых веб-сайтов. Каждый владелец ресурса сталкивается с непростой проблемой – чем его заполнить? В настоящее время конкуренция в интернете очень высока. Чтобы сайт попал в топы поисковых систем, а значит – стал популярным и легко доступным для большого числа пользователей, разнообразного контента на нем должно быть не просто много, а так много, что создать его самостоятельно и вручную выложить за разумное время – задача из области фантастики. Привлечение копирайтеров и рерайтеров – решение дорогостоящее и тоже требующее времени.
Текущего обновления данных, быстро теряющих актуальность. Исходная информация часто бывает расположена на разных сайтах, ее обновление может требоваться как ежедневно (для данных о погоде), так и ежеминутно или чаще (для биржевых сводок). В этом случае намного проще и дешевле вместо исполнителей, склонных уставать и ошибаться, загрузить работой специализированную программу.
Для написания парсеров используют, как правило, языки программирования с поддержкой регулярных выражений, предназначенных для формального описания искомого текста. Это могут быть серверные языки:
Или обычные, для написания программ, выполняемых на клиентских компьютерах:
Исходя из своего предназначения, программа должна состоять из трех частей, выполняющих следующие функции:
Парсер транслятора – неотъемлемая часть любого транслятора (как интерпретатора, так и компилятора), выполняющая анализ программы, написанной на любом языке программирования, и преобразующая текст во внутреннее представление, необходимое для последующей работы. Без этого программистам пришлось бы писать свои программы непосредственно в машинных кодах в виде единичек и ноликов, понятных процессору компьютера.
Существуют базы данных, информация в которых хранится в текстовом формате (XML, CSV и т. д.). Для извлечения таких данных нужен парсер, способный находить определенные поля и записи.
Разрабатываемый с 1997 Студией Лебедева язык для создания сайтов. Это простой (чуть сложнее в изучении HTML) язык, позволяющий создавать без больших усилий и временных затрат сложные динамические веб-сайты даже непрофессионалам.”