如何继续调用Wikipedia API的500限制?

时间:2017-07-23 19:48:12

标签: javascript jquery wikipedia-api

我正在运行以下操作,并且我注意到在500之后,它会停止,我希望它从下一个索引开始再次运行以便继续搜索:

var a = 0; 
jQuery.getJSON("https://en.wikipedia.org/w/api.php?action=query&list=embeddedin&&eilimit=1000000&eititle=Template:Infobox&callback=?", {
    disablelimitreport: true,
    format: "json"
}, function(data) {
    jQuery.each(data.query.embeddedin, function(i, item) {
        myTitle = item.title;
        wikiText();
        console.log(a);
        a++
    });
});

无论如何,我可以告诉它在完成第一个500之后从下一个索引重新开始吗?

jsFiddle

我看到它们在他们的documentation上说明了所以我想知道如果没有必要转储就可以进行下一组500次呼叫

1 个答案:

答案 0 :(得分:2)

从您的first request开始,您必须获取eicontinue的值(在您的情况下为'0|2645'),然后将其用于下一个请求:

https://en.wikipedia.org/w/api.php?action=query&list=embeddedin&&eilimit=1000000&eititle=Template:Infobox&callback=?&eicontinue=0|2645

然后继续循环直到eicontinue可用。