0

我正在从事一个数据挖掘项目,我需要为此分析论坛主题中的讨论进度。我有兴趣提取发布时间、帖子作者的统计信息(帖子数量、加入日期等)、帖子文本等信息。

但是,在使用标准抓取工具(如 python 中的 Scrapy)时,我需要编写正则表达式来检测页面的 html 源中的这些字段。由于这些标签因论坛类型而异,解决每个论坛的正则表达式已成为一个主要问题。是否有可用的此类正则表达式的标准库,以便可以根据论坛类型使用它们?

或者是否有任何其他技术可以从论坛页面中提取这些字段。

4

2 回答 2

1

我为一些主要论坛写了一些配置文件。希望你能破译并推断出如何解析它。

对于 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;>

封闭部分是包含所有线程链接的 div 线程是您可以找到每个线程链接的地方 list_next_page 是带有线程列表的下一页的链接 post 是带有帖子文本的 div。thread_next_page 是指向该线程下一页的链接

对于 Invision:

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
于 2011-04-02T04:15:39.903 回答
1

您仍然需要为每个论坛创建几种方法。但正如亨利建议的那样,也有很多论坛共享它们的结构。

关于轻松解析论坛主题的日期,dateparser就是从这个特定的需求中诞生的,它可以提供很大的帮助。

于 2016-12-20T03:36:13.727 回答