我是新的python和使用 API爬行谷歌趋势。我有2000+关键字作为DNA列表,并尝试抓取数据。当我运行这段代码时,尽管我添加了time.sleep(1),但它显示为"Google返回了代码429的响应“。有人能帮我解决这个问题吗?
下面是我的代码
#DNA has 2000+ lists
from pytrends.request import TrendReq
import pandas as pd
import xlsxwriter
import time
pytrends = TrendReq(hl='en-US,tz=360')
Data = pd.DataFrame()
#Google Trend Crawler
for i in range(DNA[i]):
time.sleep(1)
kw_list = [DNA[i]]
pytrends.build_payload(kw_list, cat=0, timeframe='today 5-y', geo='', gprop='')
df = pd.DataFrame(pytrends.interest_over_time())
#Setting a Google Trend Dates
if(i==0):
Googledate = pd.DataFrame(pytrends.interest_over_time())
Data['Date'] = Googledate.index
Data.set_index('Date', inplace=True)
#results
if(df.empty == True):
Data[DNA[i]] = ""
else:
df.index.name = 'Date'
df.reset_index(inplace=True)
Data[DNA[i]] = df.loc[:, DNA[i]]
Data发布于 2017-11-27 10:19:24
HTTP/1.1 429太多请求内容-Type: text/html重试-后: 3600 太多的RequestsToo请求
谷歌趋势没有官方的API。谷歌可能已经限制了来自同一个IP的请求数量。
https://stackoverflow.com/questions/47503300
复制相似问题