如何向zomato api提出cURL请求?

问题描述 投票:0回答:2

我刚开始探索API。到目前为止这是我的代码。对于locu API,这可行,但对于Zomato,他们使用curl头请求,我不知道如何使用。有人可以指导或告诉我如何?

import json
import urllib2

Key = 'Zomato_key'

url = 'https://developers.zomato.com/api/v2.1/categories'

json_obj = urllib2.urlopen(url)

data = json.load(json_obj)

print data
json python-2.7 zomato-api
2个回答
2
投票

通过查看Zomato API docs,似乎必须在标题中设置参数user-key

以下作品:

import json
import urllib2

Key = '<YOUR_ZOMATO_API_KEY>'
url = "https://developers.zomato.com/api/v2.1/categories"

request = urllib2.Request(url, headers={"user-key" : Key})
json_obj = urllib2.urlopen(request)
data = json.load(json_obj)

print data

如果您想要一种更优雅的方式来查询API,请查看requests模块(您可以使用pip install requests进行安装)。

我建议你以下几点:

import json
import requests

Key = <YOUR_ZOMATO_API_KEY>'
url = "https://developers.zomato.com/api/v2.1/categories"

if __name__ == '__main__':
    r = requests.get(url, headers={'user-key': Key})
    if r.ok:
        data = r.json()
        print data

注意:我建议您从StackOverflow中删除密钥,如果您关心自己保留密钥。


0
投票

这不适合我,你可以为我建议一些其他的方法。 - >尝试编译时的代码需要很长时间并在构建的请求方法中返回一个回溯错误

但curl命令正在工作curl -X GET --header“Accept:application / json”--header“user-key:c5062d18e16b9bb9d857391bb32bb52f”“https://developers.zomato.com/api/v2.1/categories

© www.soinside.com 2019 - 2024. All rights reserved.