Python Yelp v2 API查询与Yelp.com上的等效搜索之间存在很大的不一致性

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

使用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 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