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)
หรือหากการตอบสนองมีขนาดใหญ่เป็นพิเศษให้ใช้วิธีการเพิ่มเติม:
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`
โปรเจ็กต์ lxmlภายนอกสร้างจาก API เดียวกันเพื่อให้คุณมีคุณสมบัติมากขึ้นและยังคงใช้พลังงานได้