从foursquare发出请求

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

我正在尝试使用下面的函数来检索不同位置的场所,但是我一直收到此错误,我无法弄清楚,因为我以前使用过它,并且可以在不同位置完美地工作。请帮助!

def getNearbyVenues(names, latitudes, longitudes, radius=500):

    venues_list=[]
    for name, lat, lng in zip(names, latitudes, longitudes):
        print(name)

        # create the API request URL
        url = 'https://api.foursquare.com/v2/venues/explore?&client_id={}&client_secret={}&v={}&ll={},{}&radius={}&limit={}'.format(
            CLIENT_ID, 
            CLIENT_SECRET, 
            VERSION, 
            lat, 
            lng, 
            radius, 
            LIMIT)

        # make the GET request
        results = requests.get(url).json()["response"]['groups'][0]['items']

        # return only relevant information for each nearby venue
        venues_list.append([(
            name, 
            lat, 
            lng, 
            v['venue']['name'], 
            v['venue']['location']['lat'], 
            v['venue']['location']['lng'],  
            v['venue']['categories'][0]['name']) for v in results])

    nearby_venues = pd.DataFrame([item for venue_list in venues_list for item in venue_list])
    nearby_venues.columns = ['Neighbourhood', 
                  'Neighbourhood Latitude', 
                  'Neighbourhood Longitude', 
                  'Venue', 
                  'Venue Latitude', 
                  'Venue Longitude', 
                  'Venue Category']

    return(nearby_venues)`
london_venues = getNearbyVenues(names=df['Location'],
                                   latitudes=df['Latitude'],
                                   longitudes=df['Longitude']
                                  )

这是我得到的错误

---------------------------------------------------------------------------
KeyError                                  Traceback (most recent call last)
<ipython-input-180-4f13fb178c94> in <module>
      1 london_venues = getNearbyVenues(names=df['Location'],
      2                                    latitudes=df['Latitude'],
----> 3                                    longitudes=df['Longitude']
      4                                   )

<ipython-input-177-d194f1c67c83> in getNearbyVenues(names, latitudes, longitudes, radius)
     16 
     17         # make the GET request
---> 18         results = requests.get(url).json()["response"]['groups'][0]['items']
     19 
     20         # return only relevant information for each nearby venue

KeyError: 'groups'
python function foursquare
1个回答
0
投票

如果您使用的是沙箱帐户,则可能已超出API调用限制,或者没有名为“ groups”的密钥。如果没有,请提供位置的坐标。

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