在CoMeRe处理维基百科的页面的时候,由于每一个页面上有一个“历史页面”, 这里包括了这个页面的所有编辑的历史记录,因此整理并分析编辑记录,这里是一个很好的开始。
对这个页面整体的处理思路是先通过HTML分析全文本,找出历史编辑的列表,并对每条编辑记录进行分析和处理,最后每条记录得出:
- 条目的ID
- 日期
- 作者名
- 版本的文本长度
- 相对前面一个版本,文本长度变化的数量
- 评论
- 是否属于“小量编辑”
代码pagehistory.py负责进行这个的处理,需要注意的是,在匹配Wikipedia日期的时候,Python程序需要设置本地格式, 在Ubuntu下使用下面命令查看本地支持的语言:
locale -a
链接:https://github.com/KunFly/wiki
定了两个类:
PageHistory和Revision
PageHistory
- get_revisions(), 返回所有的revision
Revision
每一个revision包括一下属性:
- id, 版本ID
- date(), 版本日期
- author(), 版本作者
- size(), 版本大小
- change_size(), 相对前一个版本,修改的数量大小
- comment(), 修改的注释
- minoredit(),是否是“小量修改“
每一个属性都可以找到相对应的方法:
- get_id()
- get_date()
- get_author()
- get_size()
- get_change_size()
- get_comment()
- get_minoredit()