2 回答

TA貢獻1799條經驗 獲得超8個贊
問題在于將字符串添加到列表中。
您可能希望循環(huán)更加外部,并且您也可以使用enumarete這將為您提供一個同時包含項目及其編號的循環(huán)
for i, keyword in enumerate(keywords): gbl['df_'+str(i)] = ... something using keyword ...

TA貢獻1836條經驗 獲得超13個贊
from pytrends.request import TrendReq
pytrend = TrendReq(hl='de', tz=390, retries=10, backoff_factor=0.5)
keywords = ['foo', 'bar', 'dummy']
for keyword in keywords:
try:
pytrend.build_payload(
kw_list=[keyword],
geo='DE',
timeframe = 'now 1-d')
gbl = globals()
for i in range(len(keywords)):
gbl['df_'+str(i)] = pytrend.interest_over_time()
gbl['df_'+str(i)] = gbl['df_'+str(i)].drop(labels=['isPartial'],axis='columns')
print(keyword + ' was successfully pulled from Google Trends')
except Exception as e:
print(keyword + ' was not successfully pulled because of the following error: ' + str(e))
continue
我對你的代碼做了一些更改并且它起作用了。
這是輸出。
foo was successfully pulled from Google Trends
bar was successfully pulled from Google Trends
dummy was successfully pulled from Google Trends
上面代碼的問題是您無法將列表附加到字符串。
gbl['df_'+[str(i) for i in range(len(keywords))]] = pytrend.interest_over_time()
gbl['df_'+[str(i) for i in range(len(keywords))]] = gbl['df_'+[str(i) for i in range(len(keywords))]]
添加回答
舉報