Python Yelp v2 API查询与Yelp.com上的等效搜索之间存在很大的不一致性
使用Yelpv2API的搜索结果与您在其网站上看到的结果非常不同 例如,在网站上: 在阅读了他们的文档之后,我使用他们的API发布了相同的搜索,其中包含以下Python代码Python Yelp v2 API查询与Yelp.com上的等效搜索之间存在很大的不一致性,python,yelp,Python,Yelp,使用Yelpv2API的搜索结果与您在其网站上看到的结果非常不同 例如,在网站上: 在阅读了他们的文档之后,我使用他们的API发布了相同的搜索,其中包含以下Python代码 import json import argparse import json import pprint import sys import urllib import urllib2 import oauth2 HOST = 'api.yelp.com' PATH = '/v2/search/' # I put
import json
import argparse
import json
import pprint
import sys
import urllib
import urllib2
import oauth2
HOST = 'api.yelp.com'
PATH = '/v2/search/'
# I put my account's values here, leaving blank for the question
CONSUMER_KEY = ''
CONSUMER_SECRET = ''
TOKEN = ''
TOKEN_SECRET = ''
def main():
url_params = {
'term': 'restaurants',
'location': 'Manhattan,NY',
'sort': 2, # sort by "Highest Rated"
}
url = 'http://{0}{1}?'.format(HOST, PATH)
consumer = oauth2.Consumer(
CONSUMER_KEY,
CONSUMER_SECRET
)
oauth_request = oauth2.Request(
method="GET",
url=url,
parameters=url_params
)
oauth_request.update(
{
'oauth_nonce': oauth2.generate_nonce(),
'oauth_timestamp': oauth2.generate_timestamp(),
'oauth_token': TOKEN,
'oauth_consumer_key': CONSUMER_KEY
}
)
token = oauth2.Token(TOKEN, TOKEN_SECRET)
oauth_request.sign_request(
oauth2.SignatureMethod_HMAC_SHA1(),
consumer,
token
)
signed_url = oauth_request.to_url()
print 'Querying {0} ...'.format(url)
conn = urllib2.urlopen(signed_url, None)
try:
print conn.read()
finally:
conn.close()
我尝试了许多不同的查询参数组合,更改位置短语以包括空格、无逗号等。还尝试引入限制和偏移量,但没有成功。我做错了什么
API查询的结果在这里我认为问题可能在路径上。这是您的代码
PATH = '/v2/search/'
所以你的常规url是这样的
http://api.yelp.com/v2/search/?
url路径中出现错误。搜索路径应为:
PATH = '/v2/search'
请求url将按如下方式更改:
http://api.yelp.com/v2/search?term=food&location=San+Francisco