Система сбора, размещения и анализа данных web-страниц (часть 1)

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

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

Сейчас сформировались две основные технологии обработки информации, размещенной на web-страницах. Это поисковые системы и парсеры.

Поисковые системы работают по следующему алгоритму:

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

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

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

При использовании web-страниц, как источника информации, и при автоматизации процесса сбора данных возникают трудности, а именно:

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

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

Анализ структуры web-страниц

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

Любой документ на языке HTML представляет собой набор элементов, которые обозначаются специальными метками (тэгами). Имя тега определяет тип элемента и правила разметки. Регистр, в котором набрано имя тега, в HTML значения не имеет. Набор и рекомендуемые интерпретации тегов определены организацией W3C. Используют только два вида тегов — открывающий, или начальный, и закрывающий, или конечный, или еще дополнительно в зависимости от реализации языка возможно применение одиночного тега и тега пустого элемента (не содержит никакого текста и других данных — в этом случае обычно не указывается закрывающий тег ). Кроме того, элементы могут иметь атрибуты, определяющие любые их свойства. Атрибуты указываются в открывающем теге и дают дополнительные возможности форматирования текста. Они записываются в виде пары имя-значение, причем нечисловой значение находится в кавычках.

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

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

Таблица 1

Список тегов по типам

Список тегов по типам

Читайте также:

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.