每个月我都运行我的脚本以下载Google Trends CSV文件以供我的研究,并且我有大约1000个搜索条件。我知道着名的“您已达到配额限制,请稍后再试”错误消息,因此我使用了Mechanize python模块来提供cookie。这是我的电话:下载Google Trends CSV文件(来自AWS)
import mechanize # other imports omitted for simplicity
br = mechanize.Browser()
cj = cookielib.LWPCookieJar()
br.set_cookiejar(cj)
br.addheaders = [('User-agent', 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008071615 Fedora/3.0.1-1.fc9 Firefox/3.0.1')]
response = br.open('https://accounts.google.com/ServiceLogin?hl=en&continue=https://www.google.com/')
forms = mechanize.ParseResponse(response)
form = forms[0]
form['Email'] = username
form['Passwd'] = password
response = br.open(form.click())
Result = br.open("http://www.google.com/trends/trendsReport?q=SearchTerm&export=1")
CSVcontent = csv.reader(StringIO(Result.read()))
在我的实际脚本中,我有一个睡眠时间规格,从1到5秒不等。
但是,使用这些方法,我一次只能下载大约350个CSV文件。运行后,即使我在另一个AWS实例(不同地区,具有相同的Google帐户凭据)上重新运行我的脚本,我也只能在配额限制用完之前下载2个术语。
我也尝试在同一个实例上重新运行脚本,但使用了不同的Google凭据,但发生了同样的情况(仅限2个CSV下载)。
最糟糕的是,即使在一个月后,我仍然每天只能使用我的脚本(几个月)前使用的Google凭据下载2个CSV文件。
因此,我猜Google会监控用户在IP地址级别以及用户帐户级别的下载量,并标记下载量过大的帐户。
我的问题:
有谁能告诉我是否有一种有偿服务或API 即配额限制自由?
或者有没有办法绕过谷歌的监测(通过使用Tor或其他 方法)?但即使使用Tor,我仍然需要Google帐户凭证 对不对?
有没有办法下载没有 用户名/密码的Google Trends数据(这样我可以使用AWS自动扩展,因为每个IP地址可以至少下载2个CSV文件,所以我可以使用 )?
任何帮助和开箱即用的想法将不胜感激。
嗨jnovo/Skittles: 非常感谢你的回答,很高兴知道其他人也在做与我一样的事情。 我有一个随机时间函数,但它只是从1秒到5秒不等。我一定会尝试休息1.5〜2分钟。此外,我感谢您如何恢复被阻止的帐户的帮助。当时间到了,你感觉很舒服,我会非常感兴趣的看看你的“秘密”方法。唉你的帮助深表谢意! 未来如果您想联系我们,您可以发送电子邮件至:[email protected],这是我用于下载的帐户之一:-) – user3417321
请分享方式,如果有的话! –