Извлечение определенных полей из потока в форуме - PullRequest
0 голосов
/ 02 апреля 2011

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

Однако, при использовании стандартных инструментов очистки (таких как Scrapy в Python) мне нужно написать регулярные выражения для обнаружения этих полей в html-источнике страницы. Поскольку эти теги различаются в зависимости от типа форума, становится серьезной проблемой заняться регулярными выражениями для каждого форума. Существует ли стандартный банк таких регулярных выражений, чтобы их можно было использовать в зависимости от типа форума?

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

Ответы [ 2 ]

1 голос
/ 02 апреля 2011

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

Для VBulletin:

enclosed_section=tag:table,attributes:id;threadslist
thread=tag:a,attributes:id;REthread_title_
list_next_page=type:next_page,attributes:anchor_text;>
post=tag:div,attributes:id;REpost_message_
thread_next_page=type:next_page,attributes:anchor_text;>

enclosed_section - это div, содержащий ссылки на все потоки, где вы найдете ссылкукаждая ветка list_next_page - это ссылка на следующую страницу со списком тем. post - это div с текстом сообщения.thread_next_page - это ссылка на следующую страницу темы

Для приглашения:

enclosed_section=tag:table,attributes:id;forum_table
thread=tag:a,attributes:class;topic_title
list_next_page=tag:a,attributes:rel;next,inside_tag_attribute:href
post=tag:div,attributes:class;post entry-content |
thread_next_page=tag:a,attributes:rel;next,inside_tag_attribute:href
post_count_section=tag:td,attributes:class;stats
post_count=tag:li,attributes:,reg_exp:(\d+) Repl
0 голосов
/ 20 декабря 2016

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

Что касается простого анализа дат тем форума, dateparser родилась из этого конкретного требования, и это может бытьбольшой помощи.

...