Zomato是最受欢迎的餐厅搜索引擎之一,它提供免费的api服务...
如果在api请求中使用curl,则可以正常工作;
curl -X GET --header "Accept: application/json" --header "user_key: MY_API_KEY_HERE" "https://developers.zomato.com/api/v2.1/geocode?lat=41.10867962215988&lon=29.01834726333618"但是使用了Python的requests库,它不能工作。当我执行下面的代码时;
import requests
r = requests.get("https://developers.zomato.com/api/v2.1/geocode?lat=41.10867962215988&lon=29.01834726333618", headers={"user_key": "MY_API_KEY_HERE", "Accept": "application/json"});解释器返回下面的错误;
requests.exceptions.ProxyError: Cannot connect to proxy. Socket error: Tunnel connection failed: 403 Forbidden.通过pyCurl库进行了多次尝试,但不幸的是结果是相同的;403 Forbidden
我该如何解决这个问题?
发布于 2016-03-06 02:42:40
我在使用Zomato API的时候也遇到了问题,我正在获取500 Server Error
在标题中添加User Agent信息解决了我的问题。
import requests
from pprint import pprint
locationUrlFromLatLong = "https://developers.zomato.com/api/v2.1/cities?lat=28&lon=77"
header = {"User-agent": "curl/7.43.0", "Accept": "application/json", "user_key": "YOUR_API_USER_KEY"}
response = requests.get(locationUrlFromLatLong, headers=header)
pprint(response.json())https://stackoverflow.com/questions/34038673
复制相似问题