从服务中读取 XML - 为什么 XML 会自动转换为 JSON

Read XML from a service - Why XML is converted to JSON automatically

只是一个为什么的问题,我试图在文档中找到答案,但我没有看到它。

我有这段代码可以从 public 网络服务中读取 XML。 但是为什么当我打印响应时它不是 XML 格式,而是 JSON 格式。 为什么会这样?

如果我们在浏览器中转到源代码,我们可以看到 XML 格式。

from urllib.request import urlopen
import xml.etree.ElementTree as ET

var_url = urlopen('https://dadosabertos.camara.leg.br/api/v2/deputados?ordem=ASC&ordenarPor=nome')
xml_response = var_url.read()
xml_response = xml_response.decode('utf-8')
var_url.close()

print(xml_response)

感谢您的回答。

您根本没有使用 XML。

https://dadosabertos.camara.leg.br/api/...使用的 API 是 JSON API。

你可以这样写:

from urllib.request import urlopen
import json

var_url = urlopen(
    'https://dadosabertos.camara.leg.br/api/v2/deputados?ordem=ASC&ordenarPor=nome'
)
response = var_url.read()
response = response.decode('utf-8')
var_url.close()

obj = json.loads(response)
print(obj)

您可以使用以下方式显示您的回复 header:

print(var_url.info())