缺少数据导致的pytrends错误

Pytrends Error Caused by Lack of Data

我正在使用 pytrends related_queries() 函数为关键字列表查找相关关键字,但如果其中一个关键字没有足够的数据来提供相关查询,则进程会崩溃并显示错误:

KeyError: "[u'query' u'value'] not in index"

错误发生后,代码将无法对任何关键字起作用,直到我关闭并重新启动内核,所以我没有成功地尝试捕获错误。一个不起作用的例子是:

pytrend.build_payload(kw_list=['AMX HOME AUTOMATION'])
Related_df = pytrend.related_queries()

我能够通过为每次迭代重新建立连接来捕获错误,它效率低下但完成了工作:

r = pd.DataFrame()
s = pd.DataFrame()
for i in listofwords:
    try:
        pytrend = TrendReq(google_username, google_password, custom_useragent='Pytrends')
        pytrend.build_payload(kw_list=[i])
        Related_df = pytrend.related_queries()
        s = s.append(Related_df[i]['top'].head(3))
        r = r.append(Related_df[i]['rising']['query'].head(3))
    except:
        pass