首页 > 解决方案 > 循环获取请求(Yelp Fusion API)

问题描述

我正在尝试使用 Yelp Businesses API 从美国城市列表中提取相同类型的企业名称列表。我编写了一个我认为应该实现此目的的循环,但该请求似乎只是将列表中的最后一项作为输入读取。

所需的输出是为我列表中的每个城市调用 50 条记录(Yelp 限制)。

from yelpapi import YelpAPI
import pandas as pd
from pandas import DataFrame
key = "key" 
yelp_api = YelpAPI(key)



#Define Search 

list_of_cities = ['Portland, OR','Seattle, WA']
term = ['donuts']
search_limit = 50

#Loop through search for each city

for i in list_of_cities:
    r=yelp_api.search_query(term = term,location = i,limit = search_limit)
    cols = list(r['businesses'][0].keys())
    df = pd.DataFrame(columns=cols)
    for row in r['businesses']:
        df = DataFrame(df.append(row, ignore_index=True))

df.to_csv('yelp.csv')

使用此代码时,我只获得位于华盛顿州西雅图的“甜甜圈店”的提要,而我正在寻找西雅图和波特兰的“甜甜圈店”。

标签: pythonpandasdataframeloopsyelp-fusion-api

解决方案


推荐阅读