使用Pywikibot,您可以使用 MediaWiki API,如下所示:
import pywikibot
site = pywikibot('Wikipedia:en')
user = pyikibot.User(site, '193.224.28.2')
User 是派生自 pywikibot.Page 的一个类,它代表一个用户,并且有一种方法可以检索他的贡献。该方法是contributions(),它是一个生成器,并产生pywikibot.Page(可用于进一步信息的页面对象)、revid(修订ID)、pywikibot.Timestamp(从日期时间派生的对象)、comment(编辑概括)。要获得最后 5 次编辑,您可以使用:
contribs = list(user.contributions(total=5))
这将检索以下条目:
(Page('History of Croatia'), 282343057, Timestamp(2009, 4, 7, 14, 10, 7), '')
要获得一系列 ips,您可以使用相应的站点方法usercontibs()但您必须自己上传内容:
list(site.usercontribs(userprefix='193.224.28.', total=5))
对于每个条目,您都会得到一个这样的字典:
{'comment': '',
'ns': 0,
'pageid': 5574,
'parentid': 281875336,
'revid': 282343057,
'timestamp': '2009-04-07T14:10:07Z',
'title': 'History of Croatia',
'user': '193.224.28.2',
'userid': 0}
Site.usercontribs()方法还有其他参数也可用于Page.contributions()。它们可用于过滤结果,例如针对特定名称空间或仅检索页面的最顶层编辑。文档可以在这里找到。