【问题标题】:translate.google.com requests limit from Python requests module?来自 Python 请求模块的 translate.google.com 请求限制?
【发布时间】:2021-02-20 05:04:00
【问题描述】:

我有一个小脚本向http://translate.google.com/m?hl=%s&sl=%s&q=%s 发出请求作为我的base_link 但是我似乎已经超过了请求限制

HTTPError: HTTP Error 429: Too Many Requests

我正在寻找谷歌翻译的限制。那里的答案指向谷歌翻译 API 限制,但不是直接从 Python 的 requests 模块访问的限制。

如果我能提供更多信息,请告诉我。

【问题讨论】:

  • googletrans模块,已经实现了API请求。
  • 我正在尝试限制我的程序的模块依赖关系,因此使用requests,但如果需要,您的解决方案提供了一个很好的选择
  • 只是比较一下,如果在那个库上同样的问题,除了代理没有解决方案

标签: python python-3.x python-requests google-translate google-translation-api


【解决方案1】:

您使用 URL http://translate.google.com/m?hl=%s&sl=%s&q=%s 提交的请求正在通过 http://translate.google.com 使用免费服务。您在网上看到的限制与 Google Cloud Platform 下的 Google Translate API 有关。这两个完全不同。

目前,没有公开文件讨论使用 googletrans 的限制。但是,一旦系统检测到您通过提交大量请求来利用免费翻译服务,Googletrans 将阻止您的 IP 地址,从而导致

HTTPError:HTTP 错误 429:请求过多

.

您可以使用 Google Cloud Platform 的 Translation API,这是一项付费服务​​。使用它,您可以避免在 googletrans 中设置的低限制,这将使您在可以提交的请求数量方面更加灵活。

【讨论】:

    【解决方案2】:

    我不确定,但根据this source,免费用户似乎有 500,000 个字符。

    【讨论】:

    • 我的要求要少得多。我正在寻找请求的数量而不是里面的数据,你有这些信息吗?
    【解决方案3】:

    根据this answer,内容配额(在 API 上)是 6,000,000 个字符,每个项目和用户 60 秒。因此,可以安全地假设 Google 会用比这少得多的方式保护私有 API。谷歌不会发布私有 API 的数字(因为它应该只被网站本身使用,因此他们不愿意提供任何关于它的信息,因为无论如何只有他们应该知道它)。如果您需要更具体的答案,我建议您尝试查找 更准确的 API 限制,并假设它远小于任何数字。

    【讨论】: