pywikibot - 使用 pywikibot 的维基百科修订历史:修订大小(后续)
问题描述
我想跟进这个线程:Wikipedia revision history using pywikibot
我正在尝试使用 pywikibot 5.2.0 获取我的 Wikipedia 页面修订列表的“修订大小”(更改的字节数)变量,但在我的输出中找不到相应的变量。
这是我定义函数的方式:
def get_page_revisions(page, site=pywikibot.Site("pl", "wikipedia")):
return pywikibot.Page(site, page).revisions(content=False)
我将一个包含 3,245 个字符串(维基百科页面的标题)向量的 R 文件导入我的 Python 编辑器并运行get_page_revisions
返回 12 列和 379,426 个修订意见的函数。因此,我得到以下列:“ revid, _text, timestamp, user, anon, comment, minor, rollbacktoken, _parent_id, _content_model, _sha1, slots
”。
我没有获得尺寸信息。我究竟做错了什么?
谢谢!
解决方案
Page.revisions() 给出了一个生成器对象。运行生成器以获取包含修订内容的修订对象,将生成器转换为这些对象的列表。每个修订对象都有几个内容项,包括“大小”。例如:
import pywikibot
site = pywikibot.Site('Wikipedia:pl')
page = pywikibot.Page(site, 'Foo')
rgen = page.revisions()
rev = next(rgen)
要获得大小使用
rev.size
或者
rev['size']
所有提供的项目都可以显示,例如:
list(rev.keys())
并且应该显示:
['revid', 'parentid', 'user', 'userid', 'timestamp', 'size', 'sha1', 'roles',
'slots', 'comment', 'parsedcomment', 'tags', 'anon', 'minor', 'userhidden', 'text',
'contentmodel']
推荐阅读
- excel - Excel 计算表只需要比计算整个工作簿更长的时间
- r - read.csv 警告“引用字符串中的 EOF”以读取整个文件
- javascript - 如何指定聚焦和点击事件的顺序?
- php - 如何将虚拟机中 postgrsql 数据库中的图像显示到我的本地
- javascript - p5.js 鼠标压线动画
- java - 如何将此 if-else 简化为一个语句?
- c++ - 以非常低的资源要求强制文件复制
- unity3d - Unity列表项在高分辨率下留下了额外的空间
- excel - Excel COUNTIFS 问题
- javascript - Google Maps OverlayView:仅使 SVG 可点击