我想从Wikipedia获取主图像URL,但是问题是pageID总是在变化,现在我不知道该如何获取URL。这是api请求
https://en.wikipedia.org/w/api.php?
action=query&titles=Max_Verstappen&prop=pageimages&pithumbsize=300&format=json
这是回应
{
"batchcomplete": "",
"query": {
"normalized": [
{
"from": "Max_Verstappen",
"to": "Max Verstappen"
}
],
"pages": {
"41758713": {
"pageid": 41758713,
"ns": 0,
"title": "Max Verstappen",
"thumbnail": {
"source": "https://upload.wikimedia.org/wikipedia/commons/thumb/7/75/Max_Verstappen_2017_Malaysia_3.jpg/200px-Max_Verstappen_2017_Malaysia_3.jpg",
"width": 200,
"height": 300
},
"pageimage": "Max_Verstappen_2017_Malaysia_3.jpg"
}
}
}
}
这是我现在想用此代码到达URL的代码
JSONObject jsonObject = new JSONObject(jsonResponse);
JSONObject query = jsonObject.getJSONObject("query");
JSONObject pages = jsonObject.getJSONObject("pages");
但是现在我到了必须知道pageID的地步,但是我不能,因为我想从许多Wikipedia文章中获得许多URL。那么,有没有更简单的方法来获取URL?
您可以简单地获取对象的键值:
JSONObject pages = jsonObject.getJSONObject("pages");
for (String key : pages.keys()) {
System.out.println(key);
}
也许您的方式是错误的。实际上,这样做是行不通的。您必须找到另一个解决方案