使用python

时间:2015-12-09 18:26:43

标签: python json api urllib2 yelp

我正在尝试使用urllib2和json在python中编写一个简单的脚本,我将json打印到控制台。

目前我无法获取auth_signature值。除了auth_signature之外,我已经使用适当的键设置了url变量。我该怎么做?

这就是我所拥有的:

import json
import urllib2
import oauth2


timestamp = oauth2.generate_timestamp
nonce = oauth2.generate_nonce

url = "http://api.yelp.com/v2/search?term=food&location=Seattle&callback=callbackYelpAuth&oauth_consumer_key=XXX&oauth_consumer_secret=XXX&oauth_token=XXX&oauth_signature_method=HMAC-SHA1&oauth_timestamp=" + str(timestamp) + "&oauth_nonce=" + str(nonce) + "&oauth_signature=" + str(????)

json_obj = urllib2.urlopen(url)
data = json.load(json_obj)
print data

1 个答案:

答案 0 :(得分:0)

以下代码工作正常。希望它会对你有所帮助。

import urlparse


url = "http://api.yelp.com/v2/search?term=food&location=Seattle&callback=callbackYelpAuth&oauth_consumer_key=XXX&oauth_consumer_secret=XXX&oauth_token=XXX&oauth_signature_method=HMAC-SHA1&oauth_timestamp=temstamp_value&oauth_nonce=nonce_value&oauth_signature=signature_value"
parsed = urlparse.urlparse(url)
params = urlparse.parse_qsl(parsed.query)
for x,y in params:
    print "Parameter = "+x,", Value = "+y