我想使用Google Street View API在python中下载一些图像。
有时一个区域没有图像返回,但API密钥可以使用。
其他时间API密钥已过期或无效,也无法返回图片。
The Google Maps API server rejected your request. The provided API key is expired.
如何用Python中的代码区分这两种情况?
非常感谢。
答案 0 :(得分:1)
执行此操作的一种方法是使用requests
库进行api调用,并解析JSON响应:
import requests
url = 'https://maps.googleapis.com/maps/api/streetview?size=600x300&location=46.414382,10.013988&heading=151.78&pitch=-0.76&key=YOUR_API_KEY'
r = requests.get(url)
results = r.json()
error_message = results.get('error_message')
现在error_message
将是错误消息的文本(例如'The provided API key is expired.'
),如果没有错误消息,则为None
。所以稍后在您的代码中,您可以检查是否有错误消息,并根据消息的内容执行操作:
if error_message and 'The provided API key is invalid.' in error_message:
do_something()
elif ...:
do_something_else()
如果您只是想查看请求是否成功,您还可以检查密钥'status'
:
status = results.get('status')