Wikipedia API-查找类别的生成器查询

以下查询返回列出为“好文章”的Wikipedia文章(为方便起见,限制为5)。

https://en.wikipedia.org/w/api.php?action=query&format=json&list=embeddedin&eititle=Template:Good%20article&eilimit=5

这很好,我得到以下结果:

await Task.Delay(waitTime,token1);

现在,我想获取与每篇文章相关的类别,因此我尝试使用“生成器”查询,如此处所述:https://www.mediawiki.org/wiki/API:Query#Generators

我建立了以下URL: https://en.wikipedia.org/w/api.php?action=query&generator=embeddedin&geititle=Template:Good%20article&prop=categories

但是由于某种原因,类别列表仅显示在第一个结果中。

{
"batchcomplete": "","continue": {
    "eicontinue": "0|666","continue": "-||"
},"query": {
    "embeddedin": [
        {
            "pageid": 12,"ns": 0,"title": "Anarchism"
        },{
            "pageid": 307,"title": "Abraham Lincoln"
        },{
            "pageid": 308,"title": "Aristotle"
        },{
            "pageid": 339,"title": "Ayn Rand"
        },{
            "pageid": 627,"title": "Agriculture"
        }
    ]
}

我可以选择在第一个查询的结果上使用foreach循环来获取所有相关类别,但是,如果可能的话,我会发现从一个查询到API所需的信息更加有效。另外,我想了解为什么只显示第一个结果。

谢谢您的帮助!

XXQJING 回答:Wikipedia API-查找类别的生成器查询

您应该提高类别模块的限制:https://en.wikipedia.org/w/api.php?action=query&generator=embeddedin&geititle=Template:Good%20article&prop=categories&cllimit=max

即使不能完全解决问题,也有太多类别无法在一个查询中将它们全部返回。请查看query continuation的文档以了解如何进行处理(链接到旧版本,因为当前版本似乎无法清楚地解释该概念)。

本文链接:https://www.f2er.com/3045297.html

大家都在问