Ошибка атрибута: объект «Нетип» не имеет атрибута «группа» в googletrans

# #python #api #google-translate

#питон #API #google-перевод

Вопрос:

Я хочу преобразовать строки неизвестного языка в английский. Для чего я использую googletrans пакет python, который работает вместе с API для выполнения желаемой задачи

Итак, я сделал следующее

 from googletrans import Translator translator = Translator() translator.translate('안녕하세요.', dest='ja')  

Это дало

 --------------------------------------------------------------------------- AttributeError Traceback (most recent call last) lt;ipython-input-14-9a3706f65a29gt; in lt;modulegt;()  1 from googletrans import Translator  2 translator = Translator() ----gt; 3 translator.translate('안녕하세요.', dest='ja')  3 frames /usr/local/lib/python3.7/dist-packages/googletrans/client.py in translate(self, text, dest, src, **kwargs)  180   181 origin = text --gt; 182 data = self._translate(text, dest, src, kwargs)  183   184 # this code will be updated when the format is changed.  /usr/local/lib/python3.7/dist-packages/googletrans/client.py in _translate(self, text, dest, src, override)  76   77 def _translate(self, text, dest, src, override): ---gt; 78 token = self.token_acquirer.do(text)  79 params = utils.build_params(query=text, src=src, dest=dest,  80 token=token, override=override)  /usr/local/lib/python3.7/dist-packages/googletrans/gtoken.py in do(self, text)  192   193 def do(self, text): --gt; 194 self._update()  195 tk = self.acquire(text)  196 return tk  /usr/local/lib/python3.7/dist-packages/googletrans/gtoken.py in _update(self)  60   61 # this will be the same as python code after stripping out a reserved word 'var' ---gt; 62 code = self.RE_TKK.search(r.text).group(1).replace('var ', '')  63 # unescape special ascii characters such like a x3d(=)  64 code = code.encode().decode('unicode-escape')  AttributeError: 'NoneType' object has no attribute 'group'  

В чем причина ошибки? Есть ли какой-либо другой способ обойти эту задачу?

Ответ №1:

Поскольку я протестировал ваш сценарий с помощью вашего кода, я также столкнулся с той же ошибкой, что и на этом снимке экрана. Тестирование с использованием googletrans 3.0.0

Вероятно, это связано со старой версией библиотеки, которую вы используете, а именно googletrans 3.0.0

Чтобы устранить проблему, с которой вы столкнулись, необходимо обновить googletrans с версии 3.0.0 до версии 4.0.0rc1. Вы можете использовать приведенный ниже скрипт для обновления версии googletrans.

 pip install googletrans==4.0.0rc1  

Пожалуйста, смотрите ниже успешное тестирование с использованием googletrans 4.0.0rc1 для справки: Тестирование с использованием googletrans 4.0.0rc1