从foursquare调用请求

2024-05-19 02:24:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用下面的函数来检索不同地点的场地,但我一直遇到这个错误,我无法找出它,因为我以前使用过它,它工作得很好,但适用于不同的地点。请帮忙

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'

Tags: nameindffornameslistlnglat

热门问题