Семантический анализ html-страницы

Статус
В этой теме нельзя размещать новые ответы.

Jeurey

Хранитель порядка
Регистрация
13 Сен 2006
Сообщения
419
Реакции
614
Вопрос от sw04, переформулированный Dogmat:
Dogmat написал(а):
Каким образом можно было бы выделить текст на странице в статьи, заголовки, пункты меню и т.д.? Т.е. хотелось бы осветить проблему семантического (смыслового) разбиения текста на блоки? Насколько и каким образом помогает в данном вопросе html код страницы?


Наиболее простой вариант видится следующим: необходимо проанализировать N страниц сайта. Из каждой страницы выкинуть повторяющиеся элементы (например, футер).

Сразу же встает вопрос - что делать с сайтами, торгующими ссылками - ведь из количество весьма велико и они могут смазать похожесть блоков html-кода. Решается эта проблема путем добавления знака вопроса к URL-страницы. (например, Для просмотра ссылки Войди или Зарегистрируйся) - логика бирж ссылок не рассчитана на такие "трюки" и выдадут себя.

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

Следующим шагом стоит искать разные элементы в одинаковых контейнерах. Очень большая вероятность того, что контент страницы (основной) всегда находится в одном-и том же контейнере (например, <div ... [id|class]="content" ... >). Если размер этого блока достаточно велик (не менее половины всего "оставшегося" после первичного анализа), то с определенной долей вероятности можно утверждать о том, что это и есть искомый текст. Отметаем все, что находится "выше" и "ниже" данных блоков - получаем второсортный контент, который стоит еще избавить от ссылок, баннеров и т.д
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху