MediaWiki API: 按关键字搜索页面并获取信息

MediaWiki API: search pages by keyword and fetch information

我正在使用 wiki api 在我的网站上嵌入搜索。用户键入一些关键字,然后脚本搜索与关键字相关的页面并显示 thumbnail/title/description/categories(示例:http://drive.google.com/uc?export=view&id=0B77izt5MEPt2TUw3eUEyVVg3SUE

现在我正在使用:

GET //en.wikipedia.org/w/api.php?action=query&list=search&srsearch=KEYWORD

foreach TITLE:
  GET //en.wikipedia.org/w/api.php?action=query&titles=TITLE&prop=extracts|pageimages|categories&exchars=300

工作正常,但 api 调用量太大。所以我正在寻找一些方法来优化它。可以在第二个 GET 中传递多个标题,但是 wiki 服务器将拆分响应(使用 continue)所以没有区别。

有什么想法吗?

看看 generators 是如何工作的:

action=query&prop=categories|extracts|pageimages&format=json&exlimit=500&exintro=&explaintext=&exsectionformat=plain&piprop=thumbnail&pithumbsize=1000&pilimit=500&generator=search&redirects=&gsrsearch=doom&gsrnamespace=0&gsrwhat=text