首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何修复Keyerror: Groups?

如何修复Keyerror: Groups?
EN

Stack Overflow用户
提问于 2020-07-10 03:38:40
回答 1查看 419关注 0票数 0

在这段代码中,我需要获取关于纽约市印度餐馆的数据,但是我得到了错误消息Keyerror: Groups。我希望有人能在这个问题上给我一些帮助。我将代码与消息一起发布在您可以看到错误的地方。

代码语言:javascript
复制
def get_venues(lat,lng):
    
    #set variables
    radius=1000
    LIMIT=100
    CLIENT_ID = ['FRI4BGBGLDEYD5LXOQC4YHL2JSBGEVH3YZOOWYAYQAER3JT1'] # your Foursquare ID
    CLIENT_SECRET = ['Z30R3SJZJ1STXSM0HYE2QCH3KXK2XNJI210NQXOYBHWHOHMO'] # your Foursquare Secret
    VERSION = '20200401' # Foursquare API version
    
    #url to fetch data from foursquare api
    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)
    
    # get all the data
    results = requests.get(url).json()
    venue_data = results["response"]['groups'][0]['items']
    venue_details = []
    for row in venue_data:
        try:
            venue_id=row['venue']['id']
            venue_name=row['venue']['name']
            venue_category=row['venue']['categories'][0]['name']
            venue_details.append([venue_id,venue_name,venue_category])
        except KeyError:
            pass
        
    column_names=['ID','Name','Category']
    df = pd.DataFrame(venue_details,columns=column_names)
    return df
代码语言:javascript
复制
# prepare neighborhood list that contains indian resturants
column_names=['Borough', 'Neighborhood', 'ID','Name']
indian_rest_ny=pd.DataFrame(columns=column_names)
count=1
for row in new_york_data.values.tolist():
    Borough, Neighborhood, Latitude, Longitude=row
    venues = get_venues(Latitude,Longitude)
    indian_resturants=venues[venues['Category']=='Indian Restaurant']   
    print('(',count,'/',len(new_york_data),')','Indian Resturants in '+Neighborhood+', '+Borough+':'+str(len(indian_resturants)))
    for resturant_detail in indian_resturants.values.tolist():
        id, name , category=resturant_detail
        indian_rest_ny = indian_rest_ny.append({'Borough': Borough,
                                                'Neighborhood': Neighborhood, 
                                                'ID': id,
                                                'Name' : name
                                               }, ignore_index=True)
    count+=1
代码语言:javascript
复制
---------------------------------------------------------------------------
KeyError                                  Traceback (most recent call last)
<ipython-input-10-7a917332b722> in <module>
      5 for row in new_york_data.values.tolist():
      6     Borough, Neighborhood, Latitude, Longitude=row
----> 7     venues = get_venues(Latitude,Longitude)
      8     indian_resturants=venues[venues['Category']=='Indian Restaurant']
      9     print('(',count,'/',len(new_york_data),')','Indian Resturants in '+Neighborhood+', '+Borough+':'+str(len(indian_resturants)))

<ipython-input-3-6da7f127fa47> in get_venues(lat, lng)
     21     results = requests.get(url).json()
     22     #results = requests.get(url).json()["response"]['groups'][0['items']
---> 23     venue_data = results["response"]['groups'][0]['items']
     24     venue_details = []
     25     for row in venue_data:

KeyError: 'groups'
EN

回答 1

Stack Overflow用户

发布于 2020-07-10 04:22:43

只有当关键字不在字典中时,才会引发KeyError。引发此错误的唯一方法是不存在密钥Groups。确保存在Groups,解决问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62822449

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档