从API链接Python提取XML数据

从API链接Python提取XML数据,python,xml,scrapy,python-requests,xml-parsing,Python,Xml,Scrapy,Python Requests,Xml Parsing,我正试图刮取一个API URL。我得到了XML格式的响应。我对JSON的响应很熟悉,但对我来说这是非常新的。我想知道如何使用Scrapy或Request从XML响应中提取数据。什么类型的表达式用于针对特定值,例如,(请转到下面的链接查看数据) 链接:在返回JSON时,请尝试以下操作: import requests r = requests.get('https://www.ricsfirms.com/umbraco/api/surveyorSearchApi/results?location

我正试图刮取一个
API URL
。我得到了
XML
格式的响应。我对JSON的响应很熟悉,但对我来说这是非常新的。我想知道如何使用
Scrapy
Request
XML
响应中提取数据。什么类型的表达式用于针对特定值,例如
(请转到下面的链接查看数据)


链接:

在返回JSON时,请尝试以下操作:

import requests

r = requests.get('https://www.ricsfirms.com/umbraco/api/surveyorSearchApi/results?location=United%20Kingdom&firmName=&lon=-5.2235136&lat=50.2307777&boxId=14821&country=GB&page=1')

data = r.json()

for office in data['resultOffices']:
    print(office['firmId'])
    print(office['firmName'])
    print('---')

到底是什么问题?您尝试过什么?您应该查找XML解析和BeautifulSoup。我不熟悉BS,但对请求有一定的了解。我想知道如何将XML响应中的值作为目标?就像我们可以使用XPATH或CSS选择器一样。XML的方法是什么?很有效,谢谢,丹尼斯。你能不能告诉我,我该如何定位这些价值观,比如,我已经扩展了我的答案。您可以像在简单数组中一样使用方括号来获取所需的数据。请注意,键区分大小写,并且搜索的键确实存在。在您的情况下,没有
电子邮件1