Парсеры сайтов — что это такое?

Парсеры сайтов — что это такое?

0 320

В последнее время все больше блоггеров стремятся освоить парсеры сайтов для того, чтобы облегчить себе работу. В одной из статей я рассматривал программы для парсинга сайтов, но что же такое парсинг сайтов? Постараемся разобраться в данной статье. 

Что такое парсинг?

Парсинг (Parsing) – это принятое в информатике определение синтаксического анализа. Для этого создается математическая модель сравнения лексем с формальной грамматикой, описанная одним из языков программирования. Например, PHP, Perl, Ruby, Python.

Когда человек читает, то, с точки зрения науки филологии, он совершает синтаксический анализ, сравнивая увиденные на бумаге слова (лексемы) с теми, что есть в его словарном запасе (формальной грамматикой).

Программа (скрипт), дающая возможность компьютеру «читать» – сравнивать предложенные слова с имеющимися во Всемирной сети, называется парсером. Сфера применения таких программ очень широка, но все они работают практически по одному алгоритму.

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

Как работает парсинг, что это такое? Алгоритм работы парсера.

Независимо от того, на каком формальном языке программирования написан парсер, алгоритм его действия остается одинаковым:

  1. выход в интернет, получение доступа к коду веб-ресурса и его скачивание;
  2. чтение, извлечение и обработка данных;
  3. представление извлеченных данных в удобоваримом виде – файлы .txt, .sql, .xml, .html и других форматах.

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

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

Зачем нужен парсинг?

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

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

Без программ парсинга владельцам интернет-магазинов, которым требуются сотни однотипных описаний товаров, технических характеристик и другого контента, не являющегося интеллектуальной собственностью, было бы трудно вручную заполнять характеристики товаров.

Возможностью «спарсить» чужой контент для наполнения своего сайта пользуются многие веб-мастера и администраторы сайтов. Это оправдано, если требуется часто изменять контент для представления текущих новостей или другой, быстро меняющейся информации.

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

Основа работы парсера.

Конечно же, парсеры не читают текста, они всего лишь сравнивают предложенный набор слов с тем, что обнаружили в интернете и действуют по заданной программе. То, как поисковый робот должен поступить с найденным контентом, написано в командной строке, содержащей набор букв, слов, выражений и знаков программного синтаксиса. Такая командная строка называется «регулярное выражение». Русские программисты используют жаргонные слова «маска» и «шаблон».

Чтобы парсер понимал регулярные выражения, он должен быть написан на языке, поддерживающем их в работе со строками. Такая возможность есть в РНР, Perl. Регулярные выражения описываются синтаксисом Unix, который хотя и считается устаревшим, но широко применяется благодаря свойству обратной совместимости.

Синтаксис Unix позволяет регулировать активность парсинга, делая его «ленивым», «жадным» и даже «сверхжадным». От этого параметра зависит длина строки, которую парсер копирует с веб-ресурса. Сверхжадный парсинг получает весь контент страницы, её HTML-код и внешнюю таблицу CSS.

Источник

Этическая составляющая парсинга сайтов

Вообще, парсить чужие сайты не совсем этично!Объясню почему:

Прежде всего, вам нужно понимать, что информация, которую вы пытаетесь присвоить, была кем то написана и наглядно предоставлена для ознакомления на своем сайте или ином источнике, иными словами, это равносильно списыванию с чужой тетради и выдаче списанного за свое;

Все тупые один ты умный
Все тупые один ты умный

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

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

Всегда старайтесь писать источник, откуда вы взяли данную информацию!

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