Классификация веб-сайтов

Мне нужно просмотреть тысячи веб-сайтов с одинаковой структурой: у всех есть меню, заголовок, какой-то текст и рейтинг, как у блога. К сожалению, они также закодированы очень по-разному, а некоторые — вручную, поэтому я не могу повторно использовать селекторы CSS и, возможно, даже не полагаться на них.

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

Знаете ли вы о лучшем или более сложном подходе?

Спасибо!


person konr    schedule 01.03.2011    source источник


Ответы (2)


Просмотрите http://code.google.com/p/boilerpipe/, чтобы разобрать страницы.

Для классификации посмотрите, пожалуй, на mahout.apache.org.

person bmargulies    schedule 01.03.2011
comment
Это отличная ссылка (спасибо!). Просто к сведению других, что это действительно решает первый шаг, который идентифицирует текстовое содержание документа. Он не сегментирует содержимое на поля и не классифицирует их. - person John Lehmann; 02.03.2011

Я предлагаю разделить проблему на две основные части.

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

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

person Gilbert Le Blanc    schedule 01.03.2011
comment
И пока вы этим занимаетесь, решите проблему остановки :-) Это большая, тяжелая работа, и многие люди потратили на нее уйму времени. - person bmargulies; 01.03.2011
comment
@bmargulies: мне пришлось искать проблему остановки. :-) Постер вопроса не предоставил мне достаточно подробностей, чтобы определить, была ли его классификация практичной. Я просто дал общий ответ «разделяй и властвуй» на этот тип вопроса. - person Gilbert Le Blanc; 01.03.2011
comment
Я должен был оставить смайлик позади, извините. - person bmargulies; 01.03.2011