google_trans_new库:谷歌翻译库Googletrans的替代品

你的googletrans用对了吗?避开连接超时和语言检测不准的坑(Python 3.10+实测) 本文详细解析了Python中googletrans库的常见问题,包括连接超时、语言检测不准及Python 3.10+兼容性问题,并提供了实测有效的解决方案。通过优化域名配置、版本选择和高级用法,帮助开发者高效使用谷歌翻译库,提升编程效率。 阅读详情

简介

谷歌翻译库Googletrans久负盛名,但是由于tk值计算问题,频繁出现AttributeError: 'NoneType' object has no attribute 'group'异常。

google_trans_new库在Googletrans的基础上进行了完善,算是能够正常运行吧,但是效果也不太尽如人意,翻译结果与谷歌翻译网页结果不太一致,翻译效果较差。

项目地址为https://github.com/lushan88a/google_trans_new。

google_trans_new库当前发行版本为1.1.9,可使用pip install google_trans_new。
注意!1.19版本有一个问题没有修复,导致会出现json解析异常json.decoder.JSONDecodeError: Extra data: line 1 column 300 (char 299)。
作者虽然修复了这个问题,但是一直没有将最新代码推送到pip。
因此,解决方法有两种:

  • 安装1.19版本,找到google_trans_new.py,将第151行response = (decoded_line + ']')修改为response = decoded_line。
  • 到下载最新源码进行源码安装或者直接覆盖原有google_trans_new.py。

使用方法

快捷翻译

  • 导入google_translator类
  • 构造google_translator类实例。
  • 调用translate方法,指定待翻译文本、翻译目标语言。
  • 结果返回翻译文本。
from google_trans_new import google_translator  
  
translator = google_translator()  
translate_text = translator.translate('สวัสดีจีน',lang_tgt='en')  
print(translate_text)

结果为:Hello Chinese

检测语言

  • 导入google_translator类
  • 构造google_translator类实例。
  • 调用detect方法,指定待翻译文本。
  • 结果返回检测语言列表。
from google_trans_new import google_translator  
  
detector = google_translator()  
detect_result = detector.detect('สวัสดีจีน')
print(detect_result)

结果为:['th', 'thai']

检测结果发音

  • 导入google_translator类
  • 构造google_translator类实例。
  • 调用translate方法,指定待翻译文本、文本源语言、翻译目标语言,设置pronounce参数为True。
  • 结果返回翻译文本及文本发音。
from google_trans_new import google_translator  
  
translator  = google_translator()  
Pronounce = translator.translate('สวัสดีจีน',lang_src='th',lang_tgt='zh-cn',pronounce=True)  
print(Pronounce)

源码分析

google_trans_new库的结构非常简单:

│  __init__.py   # 重构命名空间,暴露google_translator类
│  constant.py   # 定义LANGUAGES(语言列表)和DEFAULT_SERVICE_URLS (谷歌翻译地址)
│  google_trans_new.py  # 翻译API

google_trans_new.py模块主要包含google_new_transError(Exception)和google_translator两个类。

google_translator类的方法如下:

  • 构造方法:签名为__init__(self, url_suffix="cn", timeout=5, proxies=None)

    • 参数:
      • url_suffix指定谷歌翻译地址,默认值为cn。
      • timeout指定超时时间,默认值为5。
      • proxies指定代理。
  • 请求构造方法:签名为_package_rpc(self, text, lang_src='auto', lang_tgt='auto')

    • 参数:
      • text待翻译文本。
      • lang_src翻译文本源语言,默认值为auto,即自动。
      • lang_tgt翻译文本目标语言,默认值为auto,即自动。
    • 返回值:请求字符串。
  • 翻译方法:签名为translate(self, text, lang_tgt='auto', lang_src='auto', pronounce=False)

    • 参数:
      • text待翻译文本。用于调用_package_rpc方法构造请求。
      • lang_src翻译文本源语言,默认值为auto,即自动。用于调用_package_rpc方法构造请求数据。
      • lang_tgt翻译文本目标语言,默认值为auto,即自动。用于调用_package_rpc方法构造请求数据。
      • pronounce是否返回发音。
    • 返回值:翻译结果。
    • 大致流程:
      • 检测翻译语言参数是否合法,不合法设置为默认值。
      • 检测文本是否超过5000字符,超过提示异常。
      • 通过_package_rpc构造请求数据。
      • 通过requests库返回请求结果。
      • 解析请求结果。
  • 语言检测方法:签名为detect(self, text)

    • 参数:
      • text待检测文本。
    • 返回值:检测结果。
Python日常办公10大小技巧 python常用的第三方库 python有趣的第三方库 python实用的第三方库 python常见的第三方库 阅读详情

相关推荐

google_trans_new:适用于Google翻译的免费且不受限制的python API

google_trans_new 版本1.1.9 Google翻译的免费且无限制的python API。 使用和解决使用tk值的旧api无法使用的问题非常容易使用。 此界面仅用于学术用途,请勿将其用于商业用途。 版本1.1.9具有固定的URL转换。 附:如果您获得不同性别的翻译,它将返回一个列表。 安装 pip install google_trans_new 基本用法 翻译 from google_trans_new import google_translator translator = google_translator () translate_text = translator . translate ( 'สวัสดีจีน' , lang_tgt = 'en' ) print ( translate_text ) - > Hello china 高级用法

探索`google_trans_new`: 高效、免费的Google翻译API实现

探索google_trans_new: 高效、免费的Google翻译API实现 在语言处理的世界里,准确且快速的翻译服务是至关重要的。是一个Python库,它提供了与Google Translate相似的功能,但无需官方API,因此是免费且易于使用的。本文将深入介绍此项目的背景、技术分析、应用场景以及其独特之处。 项目简介 google_trans_new由lushan88a开发,是一个纯Pyth...

gitblog_00032的博客 665

从Canny到深度学习:边缘检测指标进化史(含ODS/OIS/AP的数学推导)

本文系统梳理了边缘检测评估指标的演进历程,从经典的Canny算子到深度学习时代,重点解析了ODS、OIS和AP三大核心指标的设计哲学与数学推导。文章深入探讨了基于PR曲线的评估体系,揭示了不同指标(如ODS与OIS)在阈值优化上的差异,并分析了AP指标在边缘检测任务中的优势与局限,为算法研究和模型评估提供了实用指南。

b9c0d的博客 199

python3GUI--翻译器By:PyQt5(附源码)

文章目录一.准备工作二.预览1.启动2.选择语言3.翻译三.设计流程1.整体流程1.UI设计(草图)3.UI设计(QT设计师)四.源代码1. My_translator.py(主界面调动)2.translate_ui.py(主界面UI)3.language_select.py(语言选择窗口)4.about_author.py(关于作者 窗口)5.Translator.py(翻译器引擎)五.总结 前面用TK写过两款翻译器GUI,都是基于google_trans_new这个第三方模块写的,由于google_t

懷淰メ的博客 7467

别再纠结了!实测罗技Flow、对拷线、微软Mouse without Borders,我的最终选择是...

本文通过实测对比罗技Flow、对拷线和微软Mouse without Borders等多设备控制方案,详细分析了各自的优缺点及适用场景。作者最终选择了对拷线与罗技键鼠的组合方案,为专业用户提供了稳定可靠的多设备协同办公解决方案,特别适合需要频繁传输大文件和跨设备操作的用户。

weixin_33696106的博客 408

Python开发MCP Client

全部例子只是MCP Client访问MCP Server的过程,那么这样其实就失去了MCP协议的创建的初衷,和大模型集成后才能发挥MCP最大的作用。

Criss@陈磊 2973

[编程基础] Python谷歌翻译库googletrans总结

1 使用说明 本文介绍python谷歌翻译库接口googletrans的使用。具体见官方文档: https://py-googletrans.readthedocs.io/en/latest/#googletrans.Translator.translate 文章目录1 使用说明1.1 安装1.2 Python googletrans检测语言1.3 python googletrans简单翻译1.4 源语言和目标语言指定1.5 Python googletrans翻译列表2 参考 1.1 安装 安装谷歌py

You and Me 7842

解决群晖NAS无法拉取docker镜像问题

在2024-06-01日以前,使用SSH登录后是可以直接拉取docker镜像的;但是之后当我们使用SSH登录上群晖NAS,使用【sudo -i】切换到超管拉取镜像会提示报错【error pulling image configuration: Get "https://production.cloudflare.docker.com/registry-v2/docker/registry/v2/blobs/sha256/cf/cff6b68a194a672fd337d8728bfb252071012cce6

提供C#相关开发 、云计算、运维测试、网络安全相关技术分享与服务,有意向可联系。 2万+

参考 | PythonBug / google_trans_new: raise JSONDecodeError

解决 google_trans_new 报错问题

JackyAce6880的博客 505

【面试系列】数据工程师高频面试题及详细解答

本文针对数据工程师岗位,提供了详尽的面试题库和解答,分为初级、中级和高级三个层次。初级面试题主要涉及基本的数据处理和ETL工具的使用,如SQL查询、数据清洗和基本的数据建模。中级面试题重点考察数据管道设计、数据库优化和大数据平台的应用。高级面试题则深入探讨高级数据处理技术、分布式系统架构和数据湖的实现。通过这些问题和解答,候选人可以全面了解数据工程师岗位所需的技能,帮助其更好地准备面试。常考知识点总结部分则系统归纳了数据工程师岗位的关键技能领域。

在路上的专栏 2375

学Simulink——基于Simulink的PMSM直接转矩控制(DTC)与SVPWM对比

(如SVM-DTC),将一个控制周期Tc​分为两部分:前Ton​用有效矢量,后Toff​用零矢量,通过调节Ton​/Tc​减小脉动。:根据ψs​扇区(6个)、Te误差(±滞环带)、ψs​误差(±滞环带)选择8个基本电压矢量(6有效矢量+2零矢量)。:低速时需用电流模型(ψs​=Ls​is​+ψf​),高速时用电压模型(es​=ωψf​),避免纯积分漂移;:基于us​=Rs​is​+Ls​dtdis​​+es​(es​为反电动势),用电压模型估算ψs​;

MHD0815的博客 338

Python调用谷歌API遇到的若干问题

首先是安装包的问题,如果直接pip install的话,很有可能会导致安装版本不对,由于谷歌好像不太支持这个库了,所以很多库安装起来无法使用,目前可知googletrans==4.0.0-rc1可以使用。但是googletrans也有一个大问题就是不稳定,这时候可以安装google_trans_new作为替代。google_trans_new的网址如下。这个时候可以参考网址。

jst100的博客 1138

MATLAB与ROS联合仿真——订阅ROS消息类功能模块介绍

MATLAB与ROS联合仿真——订阅ROS消息类功能模块介绍 (1)输入参数:无 (2)输出参数:Xr和Yr是小车当前在世界坐标系下的坐标 (3)主要作用:作为ROS与MATLAB的通讯接口,从ROS中订阅小车当前的位置信息,并输出 (4)内部结构: (5)具体实现过程:通过ROS工具箱中的Subscribe模块从ROS中订阅话题/gazebo/link_statesa 通过Bus Selector模块选择ROS总线中的Pose

慕羽★的博客 2699

python--selenium实战

python结合selenium模拟鼠标点击测试浏览器

qq_39285129的博客 628

基于YOLOv5与改进遗传算法的动态路径规划方法研究

摘要 本文提出一种融合YOLOv5目标检测与改进遗传算法的动态路径规划方法。通过YOLOv5实时感知环境中的动态和静态障碍物,将语义信息转化为栅格地图。针对传统遗传算法在路径规划中易早熟收敛、局部搜索能力差等问题,提出自适应初始化种群策略、动态变异算子及精英保留机制等改进方案。仿真结果表明,该方法在动态环境中能规划出更安全、平滑且长度更优的路径,具有更强的环境适应性和鲁棒性。 关键词:路径规划;YOLOv5;遗传算法;动态环境;目标检测

huanghm88的专栏 939

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

python3--最新google_trans_new超时报错JSONDecodeError解决

文章目录一、问题二. 解决方法:1.寻找解决方法2.使用解决方法三. 测试方法四. 总结 一、问题 使用google_trans_new报错: line 340, in decode raise JSONDecodeError("Extra data", s, end) json.decoder.JSONDecodeError: Extra data: line 1 column 339 (char 338) 二. 解决方法: 1.寻找解决方法 在GitHub上找到了解决方法 https://git

懷淰メ的博客 7000

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Python使用Google多语言翻译Excel文档

Python使用Google多语言翻译Excel文档 一、前言 最近产品需要上架多语言,相比手动一个个去翻译,我想试试看看可不可以用python去实现多语言快速翻译,看过百度翻译官方文档,虽然很友好的提供了接口,同时也有免费额度,但是有些语言并不支持,所以,还是准备找找Google翻译,毕竟是服务于全球的翻译。 二、轮子 出于能不自己写就不自己写的心态,打开了GitHub。最终找到了google_trans_new,废话不多说,直接上代码 import xlrd from xlutils import co

鲸落 1745

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

探索Python的翻译神器:Googletrans的神秘面纱

是一个Python库,它提供了一个简单的接口来使用Google翻译的API。它支持多种语言的翻译,并且能够自动检测文本的语言。这个库是开源的,可以免费使用。是一个功能强大且易于使用的Python库,它为我们提供了一个简单的方式来实现多语言翻译。通过今天的探索,我们了解到了如何安装、使用基本函数、应用到实际场景以及解决一些常见问题。随着技术的不断进步,将继续为我们的语言翻译工作带来便利,让我们拭目以待它未来的无限可能。

AIGC搞起 3663

Python googletrans库使用

是一个用于翻译文本的 Python 库,使用谷歌翻译的 API。它可以将文本从一种语言翻译为另一种语言,支持多种语言自动检测。

m0_55893050的博客 3019

谷歌翻译API-python接口-Googletrans

Googletrans是一个免费且无限制的python库,可实现Google Translate API。 Google Translate交互式API可以用来调用诸如自动侦测语言种类和翻译之类的用途。 英文网址:https://py-googletrans.readthedocs.io/en/latest/#googletrans.Translator.translate API特性: 快...

fu_chao的博客 1万+

谷歌翻译接口

谷歌翻译接口 安装 pip install google_trans_new 测试 from google_trans_new import google_translator translator = google_translator() translate_text = translator.translate('美国下一届总统将会是谁?',lang_src='zh-cn',lang_tgt='en') print(translate_text) 默认自动检测语种 效果 Who

没有胡子的猫Asimov 1080

2023 python高频调用googletrans从报错到解决

因为要用googletrans来回翻译做数据增强,在这个函数里碰到不少问题,这里就直接手把手帮大家直接搞定。

Lanlan 3413

Python 本地翻译库 googletrans

Python 本地翻译库(如以下是一个简单的示例,使用库来实现中英文对照翻译。

Debug yourself! 1522

Python实例教程,谷歌翻译接口API调用方法技巧!

很久没更新了,随便水了一篇,证明我还在,将就着看吧,且看且珍惜!很遗憾,不管是搜索还是其他业务,还得看谷歌,比如翻译,虽然百度翻译也能用,但相比较还得是谷歌翻译,谷妹!下面这篇带来Python实例教程,谷歌翻译接口API调用方法技巧,附上完整调用实例及方法,源码也一并用上,仅供参考和学习!源码如有需要,可文末自取!如有用,欢迎关注本渣渣,再次感谢!一、GoogletransGoogletrans ...

二爷记 2406

探索Googletrans:一款强大的免费翻译库

**Googletrans** 是一款基于Python的开源库,实现了Google Translate API。它利用Google Translate Ajax API进行调用,支持多种功能如语言检测和翻译。该库完全免费且无使用限制,兼容Python 3.6及以上版本。详细API文档可在[这里](https://py-googletrans.readthedocs.io/en/latest)查阅。

gitblog_00287的博客 1358

回译数据增强法

回译数据增强法

cts618 311
上一篇: JSONPath库:使用类似Xpath的语法解析JSON数据
下一篇: Anaconda修改国内镜像源
mighty13
博客等级 码龄23年 728粉丝 438原创
评论 8
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值