Python使用googletrans报错的解决方法

yipeiwu_com6年前Python基础

问题

最近在工作中发现了一个问题,Python代码一直用着免费的Google翻译API插件googletrans,这两天突然就报错了:

Traceback (most recent call last):
File "xxx.py", line 5, in <module>
result = translator.translate("Result from google translator", dest="zh-CN")
File "/usr/lib/python3.4/site-packages/googletrans/client.py", line 172, in translate
data = self._translate(text, dest, src)
File "/usr/lib/python3.4/site-packages/googletrans/client.py", line 75, in _translate
token = self.token_acquirer.do(text)
File "/usr/lib/python3.4/site-packages/googletrans/gtoken.py", line 180, in do
self._update()
File "/usr/lib/python3.4/site-packages/googletrans/gtoken.py", line 59, in _update
code = unicode(self.RE_TKK.search(r.text).group(1)).replace('var ', '')
AttributeError: 'NoneType' object has no attribute 'group'

单独写个测试:

from googletrans import Translator;

if __name__ == "__main__":
translator = Translator()
result = translator.translate("Result from google translator", dest="zh-CN")
print(result.text)

result = translator.translate("使用免费谷歌自动翻译API", dest="en")
print(result.text)

曝出同样的错误。

解决办法

谷歌爸爸的翻译API接口进行了改动,让一票翻译的软件包不好使了。问题影响是全球性的,所以GayHub上很快就跟进讨论,并提交代码修复。代码在手,方案我有,三步操作让googletrans重新好使:

  • 卸载已有的googletrans;
  • git克隆最新的代码;
  • 安装包。

打开终端,三个命令搞定问题:

pip uninstall googletrans
git clone https://github.com/BoseCorp/py-googletrans.git
cd ./py-googletrans && python setup.py install

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对【听图阁-专注于Python设计】的支持。

参考

https://stackoverflow.com/questions/52455774/googletrans-stopped-working-with-error-nonetype-object-has-no-attribute-group

相关文章

python调用机器喇叭发出蜂鸣声(Beep)的方法

本文实例讲述了python调用机器喇叭发出蜂鸣声(Beep)的方法。分享给大家供大家参考。具体分析如下: 下面这段python代码可调用机器喇叭发出蜂鸣声(Beep),当然你的喇叭必须能...

Python检测网站链接是否已存在

Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。 Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。 像Perl语言...

python用Pygal如何生成漂亮的SVG图像详解

python用Pygal如何生成漂亮的SVG图像详解

前言 SVG可以算是目前最最火热的图像文件格式了,它的英文全称为Scalable Vector Graphics,意思为可缩放的矢量图形。它是基于XML(Extensible Marku...

kaggle+mnist实现手写字体识别

现在的许多手写字体识别代码都是基于已有的mnist手写字体数据集进行的,而kaggle需要用到网站上给出的数据集并生成测试集的输出用于提交。这里选择keras搭建卷积网络进行识别,可以直...

跟老齐学Python之集合(set)

回顾一下已经了解的数据类型:int/str/bool/list/dict/tuple 还真的不少了. 不过,python是一个发展的语言,没准以后还出别的呢.看官可能有疑问了,出了这么多...