首页 文章

Python Google Translate API错误

提问于
浏览
0

我非常喜欢python,并试图使用谷歌API翻译一堆关键字 . 我有一个包含3000个关键字的excel文件,其中包括英语,西班牙语,德语等 . 试图将所有内容翻译成英语 .

但是,每次运行我的代码时,都会得到不同值的错误 . 有时,我的代码在第810个关键字时会出错,而有时会在1038关键字时出错 . 我甚至没有编辑文件的布局 .

JSONDecodeError: Expecting value: line 1 column 1 (char 0)

以下是我的代码:

from googletrans import Translator
import pandas
import math
import time
df = pandas.read_excel(r'Desktop/python_keywords.xlsx')
keywords = df['Keywords']
Translate = []
translator = Translator()

for i in range(0,len(keywords)):
    word = translator.translate(str(keywords[j])).text
    Translate.append(word)

2 回答

  • 1

    你的代码哪行给你这个错误?查看错误跟踪
    让我们从你的迭代器开始:它被声明为 i ,但是你使用 j . 然后检查您的请求的长度 . 根据JSONDecodeError using Google Translate API with Python3,它不应超过5k符号 .
    无论如何,它似乎api响应空json你必须至少添加 try .. except 以避免这个错误,像这样:

    try:  
        word = translator.translate(str(keywords[j])).text  
    except JSONDecodeError as err:  
        print(err)  # if you want to see when error happens
    else:
        Translate.append(word)
    
  • 0

    通常,此错误是由于Googletrans API中的字符数限制为15K .

    JSONDecodeError:期望值:第1行第1列(char 0)

    考虑减少字符数 .

相关问题