You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Wikipedia API获取指定时间段创建的维基百科账户?

获取指定时间段创建的Wikipedia用户随机样本的方法

Wikipedia API没有直接提供「按创建时间筛选并随机抽样用户」的功能,需要分两步实现:先抓取该时间段内的用户列表,再自行生成随机样本。

1. 抓取目标时间段的用户列表

使用query+users接口,结合创建时间参数筛选,通过分页获取全量用户:

核心请求示例(单次调用)

https://en.wikipedia.org/w/api.php?action=query&list=users&usprop=creation&uslimit=500&usstart=2010-09-09T00:00:00Z&usend=2011-02-14T23:59:59Z&format=json

参数解析:

  • action=query&list=users:指定调用用户列表查询接口
  • usprop=creation:要求返回用户的创建时间属性
  • uslimit=500:单次请求最大返回500个用户(API上限)
  • usstart/usend:设置创建时间的UTC范围,格式必须为ISO 8601(带Z后缀)
  • format=json:指定返回JSON格式以便后续处理

分页处理

如果返回结果包含continue字段,需提取uscontinue值添加到下一次请求中,直到没有continue字段为止,这样才能获取该时间段的所有用户。

2. 生成随机样本

API不支持直接随机抽样,需自行处理:

  • 将所有有效用户(排除missing字段为true的已删除/无效用户)存入一个列表
  • 用编程语言的随机函数抽取样本,比如Python中可以用random.sample(用户列表, 样本数量)

关键注意事项

  • 遵守维基百科API的请求限制:每秒最多5次请求,避免触发封禁
  • 若目标时间段用户量极大,全量抓取耗时过长,可考虑分页时逐页抽样再合并,但这种方法存在抽样偏差,需谨慎使用
  • 部分用户可能是匿名账户,可根据需求通过name字段判断(匿名用户通常以IP地址或IPv6地址命名)

内容的提问来源于stack exchange,提问作者Nathan Hart-Hodgson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 21:32:11