And*_*ndy 99 python xml httprequest python-requests
我非常喜欢这个requests包及其处理JSON响应的舒适方式.
不幸的是,我不明白我是否也可以处理XML响应.有没有人体验如何使用requests包处理XML响应?是否有必要包含另一个包,例如requestsXML解码?
Mar*_*ers 171
requests没有处理解析XML响应,没有.XML响应本质上比JSON响应复杂得多,如何将XML数据序列化为Python结构并不是那么简单.
Python附带内置的XML解析器.我建议你使用ElementTree API:
import requests
from xml.etree import ElementTree
response = requests.get(url)
tree = ElementTree.fromstring(response.content)
Run Code Online (Sandbox Code Playgroud)
或者,如果响应特别大,请使用增量方法:
response = requests.get(url, stream=True)
# if the server sent a Gzip or Deflate compressed response, decompress
# as we read the raw stream:
response.raw.decode_content = True
events = ElementTree.iterparse(response.raw)
for event, elem in events:
# do something with `elem`
Run Code Online (Sandbox Code Playgroud)
外部lxml项目构建在相同的API上,为您提供更多功能和强大功能.
一种更简单的方法是dict使用xmltodict包将 XML 转换为
response = requests.get('http://blabla.com')
dict_data = xmltodict.parse(response.content)
Run Code Online (Sandbox Code Playgroud)
现在,dict_data它只是一个 Python 字典。
您可以使用 pip 安装它: pip install xmltodict
| 归档时间: |
|
| 查看次数: |
94569 次 |
| 最近记录: |