给出一个Wikipedia用户/编辑者ID和时间范围,Python中是否有一种方法可以获取有关用户/编辑者所做的所有贡献/编辑的详细信息?我想获取详细信息,例如页面编辑,采取的操作,在修订的情况下添加/删除的字节以及注释(如果有)。这有可能吗?
非常感谢!
给出一个Wikipedia用户/编辑者ID和时间范围,Python中是否有一种方法可以获取有关用户/编辑者所做的所有贡献/编辑的详细信息?我想获取详细信息,例如页面编辑,采取的操作,在修订的情况下添加/删除的字节以及注释(如果有)。这有可能吗?
非常感谢!
是的,pywikibot
的User
类具有一种.contributions()
方法,可用于迭代用户的所有贡献。
它返回一个生成器,对于每次编辑,其生成的元组为(pywikibot.Page,oldid,pywikibot.Timestamp,comment)
。您没有找到差异,但是您可以在此时检索页面(page.getOldVersion(oldid=…)
,然后从之前的位置进行差异。
简单的代码示例:
from pywikibot import Site,User
user = User(Site(),"SanMelkote")
for page,ts,comment in user.contributions():
print(Page.title(),comment)