维基百科 API - 有随机页面

Wikipedia API - get random page(s)

我正在尝试使用维基百科中的一组随机页面获得 JSON 结果,包括它们的标题、内容和图像。

我玩过他们的 API 沙箱,到目前为止我得到的最好的是这个:

https://en.wikipedia.org/w/api.php?action=query&list=random&format=json&rnnamespace=0&rnlimit=10

但这只包括十个随机页面的命名空间、id 和标题。我也想获得内容和图像。

有人知道怎么做吗?

或者,我可以处理单个随机页面的标题、内容和图像 url。 我在这里得到的最好的是:

https://en.wikipedia.org/w/api.php?action=query&generator=random&format=json

你很接近。 generator=random 是正确的方法。然后您可以使用各种 prop 值来获取您想要的信息:

  • 始终包含页面标题。

  • 要获取文本,请使用 prop=revisonsrvprop=content

  • 要获取页面上使用的所有图像,请使用 prop=images

    请注意,这通常会包含您可能不感兴趣的图像,例如图标和旗帜。要解决这个问题,您可以尝试 prop=pageimages,尽管它似乎并不总是有效。或者您可以尝试同时使用两者。

因此,最终查询可能如下所示:

https://en.wikipedia.org/w/api.php?format=json&action=query&generator=random&grnnamespace=0&prop=revisions|images&rvprop=content&grnlimit=10

如果您更愿意使用他们的 REST api,

curl -X GET "https://en.wikipedia.org/api/rest_v1/page/random/summary"

Documentation