维基百科 API 请求有时不返回结果

Wikipedia API request sometimes not returning results

我想向维基百科发出请求 API 以查看给定名称是否有维基百科页面。

例如,假设我发出 API 请求以获取 Justin Bieber 的页面:

    source = "https://en.wikipedia.org/w/api.php?action=query&titles=justin%20bieber&prop=revisions&rvprop=content&format=json"
    data = open(source).read
    json = JSON.parse(data)

然后我返回 JSON 响应 this info. But why is it not returning any result for some less well known name (even though they have wiki pages?) For example, this brent bolthouse page: https://en.wikipedia.org/wiki/Brent_Bolthouse. If I check the json,没有迹象表明它是一个实际页面..

我基本上只是想执行一个简单的检查,看看是否有与确切名称匹配的 wiki 页面。

啊,我发现 MediaWiki 对页面标题区分大小写。

尝试将姓名的所有部分大写,例如:

"brent bolthouse".titleize
=> "Brent Bolthouse"

我建议这样做是因为维基百科关于人物的页面标题总是采用这种格式。虽然您使用小写名称作为查询的 URL 不起作用,但使用大写名称 does.

的 URL