使用维基百科 API 获取特定时间范围内阅读次数最多的文章?
Use Wikipedia API to get the most read articles within a certain time range?
给定一些整数 n
和一个日期 d
,我想使用维基百科 API 来获取 n
之间时间段内查看次数最多的文章d
和当前日期。这可能吗?如果可能,怎么做?
到目前为止我尝试过的是:
使用https://wikimedia.org/api/rest_v1/metrics/pageviews/top/en.wikipedia/all-access/2017/05/01。这种方法的问题在于,首先,这似乎不支持 n = 1000
之外的其他值,其次,它仅聚合一天的视图,而不是任意时间范围的视图。
使用query action with list allpages
(i.e. https://en.wikipedia.org/w/api.php?action=query&format=json&list=allpages)获取所有文章,但我不知道如何过滤结果,只包含查看次数最多的文章。
我也检查了 https://stats.wikimedia.org/ 但没有发现任何有用的东西。
此功能目前似乎无法通过综合浏览量 API 使用。您可以找到给定日期或给定月份中浏览次数最多的文章,但不能查找任意时间范围内的文章。请参阅 REST API docs for the different options available, and also see the Pageviews API page on Wikitech,它给出了查找给定月份中查看次数最多的文章的示例。 (有点令人担忧的是,API 文档页面上似乎没有记录每月浏览次数最多的文章语法。)
您也可以通过 Action API (api.php) 获取页面浏览量数据,正如 Tgr 在下面的评论中所说,但数据与 REST API.
您可能想在维基媒体开发者观看的 wikitech-l email list 上提问。他们将能够以不同的方式告诉您这是否可行,如果不行,该功能不可用的原因。
给定一些整数 n
和一个日期 d
,我想使用维基百科 API 来获取 n
之间时间段内查看次数最多的文章d
和当前日期。这可能吗?如果可能,怎么做?
到目前为止我尝试过的是:
使用https://wikimedia.org/api/rest_v1/metrics/pageviews/top/en.wikipedia/all-access/2017/05/01。这种方法的问题在于,首先,这似乎不支持
n = 1000
之外的其他值,其次,它仅聚合一天的视图,而不是任意时间范围的视图。使用query action with list
allpages
(i.e. https://en.wikipedia.org/w/api.php?action=query&format=json&list=allpages)获取所有文章,但我不知道如何过滤结果,只包含查看次数最多的文章。
我也检查了 https://stats.wikimedia.org/ 但没有发现任何有用的东西。
此功能目前似乎无法通过综合浏览量 API 使用。您可以找到给定日期或给定月份中浏览次数最多的文章,但不能查找任意时间范围内的文章。请参阅 REST API docs for the different options available, and also see the Pageviews API page on Wikitech,它给出了查找给定月份中查看次数最多的文章的示例。 (有点令人担忧的是,API 文档页面上似乎没有记录每月浏览次数最多的文章语法。)
您也可以通过 Action API (api.php) 获取页面浏览量数据,正如 Tgr 在下面的评论中所说,但数据与 REST API.
您可能想在维基媒体开发者观看的 wikitech-l email list 上提问。他们将能够以不同的方式告诉您这是否可行,如果不行,该功能不可用的原因。