在提交翻译文本时收到“错误411(需要长度)”

时间:2018-01-09 19:49:12

标签: google-translate

我刚刚开始使用Google Translate,而我正在使用Python API。我的源语言是简体中文。

对于少量文本(如文章标题),它可以正常工作。

当我尝试发送整篇文章时,我收到413错误,说我的请求太大了。根据运行len(文本),我的文章只有2236个字符长,但是这是用Unicode编写的,所以当它通过电线时可能会超出5000个字符的建议/限制。

当我以1000个unicode字符切断字符串时,我得到“Error 411,Length Required”。

我怀疑我的1000个字符的盲目切割是将一些字符切成两半,但我无法弄清楚content_length的设置位置(并且在translate()方法中看起来确实没有暴露的参数帮助)

2 个答案:

答案 0 :(得分:1)

通过在正文而不是在查询中发送数据来修复错误411。当我在查询字符串中发送文本时,我遇到了同样的问题。

答案 1 :(得分:1)

如果仍然有人遇到此问题,则升级到最新的google-cloud-translate客户端应该可以解决此问题。有关更多信息,PR here为我解决了这个问题,那就是客户端使用的是GET请求而不是POST请求。

注意:这还应该解决在发送适当大小的文本列表进行翻译时获取413(请求实体太大)的相关错误。