Googletrans停止工作,Json.decoder字符和表情错误

2024-05-13 14:53:54 发布

您现在位置:Python中文网/ 问答频道 /正文

在我开始之前-

代码:

from googletrans import Translator
import random
translator = Translator()

languages = ['af', 'sq', 'am', 'ar', 'hy', 'az', 'eu', 'be', 'bn', 'bs', 'bg', 'ca', 'ceb', 'zh-CN', 'zh-TW', 'co',
             'hr', 'cs', 'da', 'nl', 'eo', 'et', 'fi', 'fr', 'fy', 'gl', 'ka', 'de', 'el', 'gu', 'ht', 'ha',
             'haw', 'hi', 'hmn', 'hu', 'is', 'ig', 'id', 'ga', 'it', 'ja', 'jw', 'kn', 'kk', 'km', 'ko', 'ku',
             'ky', 'lo', 'la', 'lv', 'lt', 'lb', 'mk', 'mg', 'ms', 'ml', 'mt', 'mi', 'mr', 'mn', 'my', 'ne', 'no', 'ny',
             'ps', 'fa', 'pl', 'pt', 'pa', 'ro', 'ru', 'sm', 'gd', 'sr', 'st', 'sn', 'sd', 'si', 'sk', 'sl', 'so', 'es',
             'su', 'sw', 'sv', 'tl', 'tg', 'ta', 'te', 'th', 'tr', 'uk', 'ur', 'uz', 'vi', 'cy', 'xh', 'yi', 'yo', 'zu']
text = '''
hello
'''

for i in random.sample(languages, 102)[:30]:
    text = translator.translate(text, dest=i).text

print(translator.translate(text, dest='en').text)

错误:

^{pr2}$

我试图实现的是一个自动翻译,它提供一个输入,然后随机翻译大约30次。在

代码运行良好,没有错误,也正常工作,但有时会崩溃。根据我的计算,如果你在需要翻译的文本中添加一个表情符号或一些由译者生成的字符(复杂的东方字符),它会崩溃并提供一个错误,这与上面的错误几乎相同(我将解释为什么我不能复制它)。在

大多数情况下,当程序崩溃时,我可以正常运行它,它将正常工作,但不一致的错误,但有时代码根本不会翻译,它会立即崩溃,我不能再次运行程序,即使我运行一个简单的代码,如:

from googletrans import Translator
translator = Translator()

print(translator.translate('buna', dest='en').text)

>>>should produce `hello`

它再现了同样的错误。如果我在没有库的情况下运行程序,它运行得很好。如果我删除了整个文件夹(如果有帮助,我使用pycharm,它会创建一个包含我用于项目的环境的venv文件夹),然后我再次运行该程序,它会正常工作,直到它再次崩溃。在

我想解决的问题:

  • 我怎样才能阻止程序崩溃
  • 我怎样才能包括表情符号

谢谢你的帮助。在


Tags: 代码textfromimport程序hello错误random