JSONDecodeError с использованием Google Translate API с Python3
Я провел тщательный поиск по переполнению стека, но не смог найти ответ на эту проблему. Я пытаюсь использовать Google Translate API (googletrans 2.2.0) для Python (3.6.2) и пытаюсь перевести набор неанглоязычных документов на английский. Я позволяю Google Translate определять язык. Вот мой код:
## 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)
Я ограничиваю свой вызов API, ожидая каждый раз 10 секунд. Я также только кормлю 15 000 символов API за раз, чтобы оставаться в пределах ограничения на количество символов.
Каждый раз, когда я запускаю этот код, я получаю следующее сообщение об ошибке:
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
Кто-нибудь может помочь?
1 ответ
Я думаю, что, возможно, нашел ответ на свой вопрос. Если я уменьшу количество символов, которые я передаю в API, до 5k, все будет работать нормально. Странно, так как в документации Googletrans говорится, что ограничение составляет 15 тыс. Я должен буду пакетировать запрос.
Вы должны прекратить использовать googletrans, пока они не исправят это, и вместо этого использовать translate: