我正在编写一个脚本来从本地Pyspark服务器提取指标。在我的代码的一部分中,requests
可以很好地工作;它返回我想要的JSON数据。但是,在脚本requests
的另一部分(更具体地说,req.json
)仅返回
<bound method Response.json of <Response [200]>>
而不是实际的JSON数据(与req.json()
相同)。
将请求发送给您的URL是
http://localhost:4040/api/v1/applications/local-1562033649191/executors/driver/threads
这就是代码行req = re.get(URL)
被击中的原因,这就是我在命令行中使用cURL测试的URL。结果不同。
我检查了req.url
是否与正在被URL匹配的URL相匹配。
编辑:相关代码:
# collect JSON from each given executor by the executor's respective URL
for url in appExecutorIDURLs:
req = re.get(url)
print(req.json)
appExecutorIDURLs
当前返回一个元素列表:
['http://localhost:4040/api/v1/applications/local-1562033649191/executors/driver/threads']
有人对此有任何见解吗?
答案 0 :(得分:0)
调用req.json()
时是否添加了括号? req.json
询问请求对象的属性,它没有调用json()
方法。
或者,您可以使用
查看响应正文response = requests.get('url', ...)
response.content
尽管这不会将响应主体本身转换为字典。
希望这会有所帮助!