如何从维基百科 JSON 响应中获取"extract"键的值



我想在Python3中读取维基百科JSON响应中的"extract"键的值。我正在测试的 URL 是 https://en.wikipedia.org/w/api.php?action=query&titles=San%20Francisco&prop=extracts&format=json。

响应如下所示

{
  "batchcomplete": "",
  "query": {
    "pages": {
      "49728": {
        "pageid": 49728,
        "ns": 0,
        "title": "San Francisco",
        "extract": "<p><b>San Francisco</b></p>"
      }
    }
  }
}

我删除了内容,因为它很多。

现在的问题是我如何以编程方式读取页码。页码随不同的搜索而变化。我绝对不想对页码进行硬编码。我放什么而不是页码

content = response.query.pages.<page number>.extract

有没有办法从页面标签中提取密钥,然后继续获取它的值?

使用 .keys() 方法执行此操作的一种可能方法

page_number = list(json["query"]["pages"].keys())[0]

我发现我可以通过使用Python的.keys((方法解决这个问题。我做到了。

key = list(response['query']['pages'].keys())
print(response['query']['pages'][key[0]]['extract'])

最新更新