我想了解eicontinue
參數是如何工作的,該文件說:如何在wikipedia API上使用eicontinue參數?
eicontinue: Used to continue a previous request and eicontinue
當更多的結果可用,用它來繼續。
就是這樣。基本上維基百科限制了500個電話,或者5000個機器人。我想要使用該參數來完成一個新的調用。對於我檢查的最後一篇文章的last id
環路發現:
newQuery();
function newQuery() {
console.log(JSON.stringify(JSON.parse(JSON.stringify(spacetime)), null, 4));
jQuery.getJSON("https://en.wikipedia.org/w/api.php?action=query&list=embeddedin&eicontinue=2|"+myId+"&eilimit=500&noimages=true&mobileformat=true&eititle=Template:Infobox&callback=?", {
disablelimitreport: true,
format: "json"
}, function(data) {
$.each(data.query.embeddedin, function(i, item) {
counter++;
curTitle = item.title;
if (i===data.query.embeddedin.length-1) {
myId = item.pageid;
myTitle = item.title;
}
wikiText();
});
});
}
The documentation非常差,從我能找到解決在網絡上我應該做的:
eicontinue=2|"+myId+"
這很好,但我不明白的是:什麼是2參數? eicontinue=2|"
如果我刪除,我得到:
Cannot read property 'embeddedin' of undefined
我去上embeddedin parameter page閱讀更多,但它並沒有太大的幫助。
在文檔頁面,有an example,其結果是:
{
"batchcomplete": "",
"continue": {
"eicontinue": "2|4571809",
"continue": "-||"
},
"query": {
"embeddedin": [
{
"pageid": 2428176,
"ns": 0,
"title": "Congelation"
},
{
"pageid": 2581310,
"ns": 2,
"title": "User:Rpyle731/sandbox/archive1"
},
{
"pageid": 2621895,
"ns": 0,
"title": "Battledore and shuttlecock"
},
{
"pageid": 2710517,
"ns": 1,
"title": "Talk:Scott Fahlman"
},
{
"pageid": 3954860,
"ns": 3,
"title": "User talk:PBS/Archive 6"
}
]
}
}
從那裏我可以看到:
"continue": {
"eicontinue": "2|4571809",
"continue": "-||"
},
這更加混亂,它看起來像它使用這兩個eicontinue
和continue-||
雖然沒有在文檔中列出,我不明白。然後再次,數字2|
非常感謝,這是真正有用的,有幾個問題的問候: 1.'什麼是0' - 2.爲什麼你使用'inprop =網址'? 3.'generator'和'raw'有什麼區別? –
1.我不確定。它似乎是MediaWiki返回的序列號。在這一點上,我期望如果你發送'&geicontinue = 0 | 324',你將返回'1 | xxx'。但我不知道。 2.這是對我在Python中使用的代碼的一種控制。我認爲它給了你更多的信息。請參考我關於實驗的評論。 :) 3. https://www.mediawiki.org/wiki/API:Raw_query_continue在頁面頂部說了一些關於此事的祕密。請閱讀,你會知道我所知道的一切。 –
它確實是神祕的,現在在那個頁面上它提到'accontinue',我用'eicontinue',並且你建議'geicontinue',我不明白這些差異,我所知道的是我們應該避免,然後再'rawcontinue ' –