AttributeError: 'NoneType' object has no attribute 'group' in googletrans
AttributeError: 'NoneType' object has no attribute 'group' in googletrans
我想将未知语言字符串转换为英文。为此,我正在使用 googletrans
python 包,它与 API 一起工作以执行所需的任务
所以,我关注了
from googletrans import Translator
translator = Translator()
translator.translate('안녕하세요.', dest='ja')
这给了
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-14-9a3706f65a29> in <module>()
1 from googletrans import Translator
2 translator = Translator()
----> 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
--> 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):
---> 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):
--> 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'
---> 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'
导致错误的原因是什么?有没有其他方法可以完成任务。
由于我已经使用您的代码测试了您的场景,因此我也遇到了与此屏幕截图中相同的错误。
这可能是因为您使用的是旧库版本 googletrans 3.0.0
要解决您遇到的问题,您必须将 googletrans 从 3.0.0 升级到 4.0.0rc1。您可以使用以下脚本来升级您的 googletrans 版本。
pip install googletrans==4.0.0rc1
使用googletrans 4.0.0rc1成功测试如下,供您参考:
我想将未知语言字符串转换为英文。为此,我正在使用 googletrans
python 包,它与 API 一起工作以执行所需的任务
所以,我关注了
from googletrans import Translator
translator = Translator()
translator.translate('안녕하세요.', dest='ja')
这给了
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-14-9a3706f65a29> in <module>()
1 from googletrans import Translator
2 translator = Translator()
----> 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
--> 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):
---> 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):
--> 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'
---> 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'
导致错误的原因是什么?有没有其他方法可以完成任务。
由于我已经使用您的代码测试了您的场景,因此我也遇到了与此屏幕截图中相同的错误。
这可能是因为您使用的是旧库版本 googletrans 3.0.0
要解决您遇到的问题,您必须将 googletrans 从 3.0.0 升级到 4.0.0rc1。您可以使用以下脚本来升级您的 googletrans 版本。
pip install googletrans==4.0.0rc1
使用googletrans 4.0.0rc1成功测试如下,供您参考: