使用Google Translate API和Python3的JSONDecodeError

时间:2017-12-29 10:47:50

标签: python python-3.x google-translate language-translation jsondecoder

我已经彻底搜索了Stack Overflow,但无法找到这个问题的答案。我尝试使用Google Translate API(googletrans 2.2.0)进行Python(3.6.2),并尝试将一组非英语文档翻译成英语。我让Google Translate进行语言检测。这是我的代码:

DispatchTimeInterval.milliseconds(Int(time * 1000))

每次等待10秒钟,我都会限制对API的调用。我也只是一次提供API 15k字符以保持在字符限制内。

每次运行此代码时,都会收到以下错误消息:

## newcorpus is a corpus I have created consisting of non-english documents
fileids = newcorpus.fileids
for f in fileids:
    p = newcorpus.raw(f) 
    p = str(p[:15000])
    translated_text = translator.translate(p)
    print(translated_text)
    sleep(10)

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:3)

您必须停止使用googletrans,直到他们修复它,然后使用 translate

https://pypi.org/project/translate/

答案 1 :(得分:2)

我想我可能已经找到了自己问题的答案。如果我减少了我一次性加到API的字符数到5k,那么一切似乎都能正常工作。奇怪的是,自Googletrans文档说限制为15k ......好吧。我将不得不批处理请求。