我可以使用Google搜索中的Python刮擦所有URL结果,而不会被阻止



我意识到这个问题的版本已被问到,而前几天我花了几个小时尝试了许多策略。

我想使用Python刮擦Google搜索中的所有URL,我可以在单独的脚本中使用该URL来对大型语料库进行文本分析(主要是新闻网站)。这似乎相对简单,但是我尝试过的任何尝试都没有正常工作。

这与我所近:

from google import search
for url in search('site:cbc.ca "kinder morgan" and "trans mountain" and protest*', stop=100):
    print(url)

在我被踢之前,这返回了大约300个URL。使用这些参数的实际搜索提供了大约1000个结果,我希望所有参数。

首先:这可能吗?第二:有人有任何建议吗?我基本上只需要在另一个脚本中使用的所有URL的TXT文件。

看来,此软件包使用屏幕刮擦来检索Google的搜索结果,因此它与Google的服务条款不佳,这可能是您被阻止的原因。

Google服务条款中的相关条款:

不要滥用我们的服务。例如,不要干扰我们的服务,也不要尝试使用接口和我们提供的指令以外的方法访问它们。您只能按照法律允许使用我们的服务,包括适用的出口和重新出口控制法律和法规。如果您不遵守我们的条款或政策,或者我们正在调查可疑的不当行为,我们可能会暂停或停止向您提供服务。

我找不到一个确定的数字,但是似乎它们每天的搜索查询数量的限制也很严格 - 在其JSON自定义搜索API文档上,每天100个搜索查询/天。<<<<<<<</p>

尽管如此,尝试其他替代方案查看它们是否工作得更好:

  1. 美丽的小组
  2. 砂纸
  3. Parsehub-这不在代码中,而是具有良好文档的有用软件。链接到他们有关如何刮擦URL列表的教程。

最新更新