【笔记】Python3|(一)Python 申请并调用国内百度、阿里、腾讯、有道的翻译 API 的教程和测试情况(第三方库 translate 和 腾讯 API 篇)
var code = “dccf4c95-7458-4b38-b8ae-d45b3e59c218”
价格和 API 申请参考:
- 免费翻译接口最新最全汇总(百度翻译,腾讯翻译,谷歌翻译,DeepL翻译等…):了解了大部分免费翻译接口的价格情况以及申请的官方地址。
- 百度、阿里、腾讯、有道各平台翻译API申请教程:图文并茂地了解了翻译接口的具体申请方式。
测试方式:
- 我全写成了
Translator类,这样就能复用 python 库translate的测试代码。 - 调用方式一律都是
Translator(from_lang="en",to_lang="zh").translate(sentence)的形式。 - 性能测试:用的是 Python 的第三方库 Pytest
- 功能测试:主要是针对我自己的翻译需求做的测试,我的翻译需求是翻译目录,我写的处理脚本是分词分句之后逐词逐句翻译,具体翻译了个啥你们可以直接看后文。
本篇为第一篇,只包含第三方库 translate 和 腾讯 API 的测评。
文章目录
0 translate 库
0.1 参考
这个第三方库用的是 DeepL 的 API。
亲测请求了 10 次就用不了了。。。蚌埠住。
0.2 安装
pip install --upgrade translate
0.3 测试代码
from translate import Translator # pip install translate # 极其拉胯难用,因为有次数限制
# from tencent import Translator
####################################################################################################
#---------------------------------------- Translator ---------------------------------------------#
####################################################################################################
def isContainAlpha(str_check):
return str_check.lower() != str_check.upper()
def test_simple_translate():
print(Translator(from_lang="English",to_lang="Chinese").translate('Hello, world!'))
0.4 测试结果
0.4.1 性能测试:巨慢
就翻译个这玩意要 2.89s

0.4.2 功能测试:Failed
因为它翻译 3 次就挂了。
1 腾讯 - 500万字符免费/每月
1.1 参考
参考:
腾讯翻译API接口免费翻译额度:500万字符免费/每月;
超出免费额度价格:58元/百万字符,有字符资源包出售;
1.2 安装
pip install --upgrade tencentcloud-sdk-python
1.3 测试代码
需要运行的测试代码就不重复贴了,这是 Translator 类定义的代码:
from tencentcloud.common import credential
from tencentcloud.common.profile.client_profile import ClientProfile
from tencentcloud.common.profile.http_profile import HttpProfile
from tencentcloud.common.exception.tencent_cloud_sdk_exception import TencentCloudSDKException
from tencentcloud.tmt.v20180321 import tmt_client, models
SecretId = ""
SecretKey = ""
class Translator:
def __init__(self, from_lang, to_lang):
self.from_lang = from_lang
self.to_lang = to_lang
def translate(self, text):
try:
cred = credential.Credential(SecretId, SecretKey)
httpProfile = HttpProfile()
httpProfile.endpoint = "tmt.tencentcloudapi.com"
clientProfile = ClientProfile()
clientProfile.httpProfile = httpProfile
client = tmt_client.TmtClient(cred, "ap-beijing", clientProfile)
req = models.TextTranslateRequest()
req.SourceText = text
req.Source = self.from_lang
req.Target = self.to_lang
req.ProjectId = 0
resp = client.TextTranslate(req)
return resp.TargetText
except TencentCloudSDKException as err:
return err
if __name__ == '__main__':
translator = Translator(from_lang="en", to_lang="zh")
print(translator.translate("Hello, world!"))
1.4 测试效果
1.4.1 性能测试:效果很好,响应飞快!
输出打印时间:1.3s

1.4.2 功能测试:一些计算机专有的词汇处理得不是很好
比如下图的 fixtures,不过其他的常见词汇翻译挺好的,算是能用能看懂了!

1.4.2 API 使用情况:正常,无坑
翻译的文档的具体信息是通过查看 VScode 右下角得到的。

- 翻译次数:我翻译的文档是 548 行的目录文件,平均一行翻译了 2~3 次。和后台的请求次数是能对得上的。
- 文本翻译字符数:我翻译的文档是 26865 字符数的目录文件,输出的结果是 15038 个字符的文件,不过我写的脚本对一些符号做了去除的处理,所以实际参与翻译的字符没那么多。可以看到,它应该是没有把翻译的结果阴险地加到字符数里面的,还算厚道。

后续其他篇目敬请期待,若有更新会在本文结尾附上链接。
本账号所有文章均为原创,欢迎转载,请注明文章出处:https://blog.csdn.net/qq_46106285/article/details/138141104。百度和各类采集站皆不可信,搜索请谨慎鉴别。技术类文章一般都有时效性,本人习惯不定期对自己的博文进行修正和更新,因此请访问出处以查看本文的最新版本。
【笔记】Python3|(一)Python 申请并调用国内百度、阿里、腾讯、有道的翻译 API 的教程和测试情况(第三方库 translate 和 腾讯 API 篇)的更多相关文章
- Python标准库、第三方库和外部工具汇总
导读:Python数据工具箱涵盖从数据源到数据可视化的完整流程中涉及到的常用库.函数和外部工具.其中既有Python内置函数和标准库,又有第三方库和工具. 这些库可用于文件读写.网络抓取和解析.数据连 ...
- 140种Python标准库、第三方库和外部工具
导读:Python数据工具箱涵盖从数据源到数据可视化的完整流程中涉及到的常用库.函数和外部工具.其中既有Python内置函数和标准库,又有第三方库和工具. 这些库可用于文件读写.网络抓取和解析.数据连 ...
- Python 标准库、第三方库
Python 标准库.第三方库 Python数据工具箱涵盖从数据源到数据可视化的完整流程中涉及到的常用库.函数和外部工具.其中既有Python内置函数和标准库,又有第三方库和工具.这些库可用于文件读写 ...
- Qt编程可不可以结合其他的第三方库和本土API?(有zeroMQ的Qt封装,还可轻易使用Python的库)
作者:渡世白玉链接:http://www.zhihu.com/question/29030777/answer/59378712来源:知乎著作权归作者所有,转载请联系作者获得授权. 可以,十分可以,你 ...
- 调用第三方库时需注意MD/MT的链接编译方式(遇到的坑记录)
MD与/MT编译 1./MD是动态库链接方式编译 (DEBUG版本是/MDd) 2./MT是静态库链接方式编译 (DEBUG版本是/MTd) 编译器不会检查到的问题 我今天遇到的记录下来 当你调用第三 ...
- python爬虫实战——自动下载百度图片(文末附源码)
用Python制作一个下载图片神器 前言 这个想法是怎么来的? 很简单,就是不想一张一张的下载图片,嫌太慢. 在很久很久以前,我比较喜欢收集各种动漫的壁纸,作为一个漫迷,自然是能收集多少就收集多少.小 ...
- python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码
python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码 淘宝IP地址库 http://ip.taobao.com/目前提供的服务包括:1. 根据用户提供的 ...
- python3.4学习笔记(二十一) python实现指定字符串补全空格、前面填充0的方法
python3.4学习笔记(二十一) python实现指定字符串补全空格.前面填充0的方法 Python zfill()方法返回指定长度的字符串,原字符串右对齐,前面填充0.zfill()方法语法:s ...
- python3.4学习笔记(二十) python strip()函数 去空格\n\r\t函数的用法
python3.4学习笔记(二十) python strip()函数 去空格\n\r\t函数的用法 在Python中字符串处理函数里有三个去空格(包括'\n', '\r', '\t', ' ')的函数 ...
- python3.4学习笔记(十二) python正则表达式的使用,使用pyspider匹配输出带.html结尾的URL
python3.4学习笔记(十二) python正则表达式的使用,使用pyspider匹配输出带.html结尾的URL实战例子:使用pyspider匹配输出带.html结尾的URL:@config(a ...
随机推荐
- IDEA测试Flink程序
一.导入项目,添加jar包 右键项目=>open module setting 选择Flink1.9的lib目录下flink-dist_2.11-1.9.2.jar包(对应运行版本) 保存即可. ...
- Doris插入数据底层存储测试
建表语句 CREATE TABLE IF NOT EXISTS base_site_test( site_id INT DEFAULT '10', city_code INT, user_name V ...
- NOIp 2024 游记
要是 T3 T4 挂分就寄了. Day-11 运动会上 vp 了 NOIp2023 和 NOIp2022,NOIp2023 被 T2 硬控了一会,最后口胡的做法感觉可以拿 \(100+100+35+1 ...
- 幻兽帕鲁/Palworld/支持网络联机 v0.1.5.1
游戏介绍 在广阔的世界中收集神奇的生物"帕鲁",派他们进行战斗.建造.做农活,工业生产等,这是一款支持多人游戏模式的全新开放世界生存制作游戏. 注意事项 先启动STEAM客户端,在 ...
- C++调用动态链接库DLL的隐式链接和显式链接基本方法小结
C++程序在运行时调用动态链接库,实现逻辑扩展,有两种基本链接方式:隐式链接和显式链接.下面就设立最基本情形实现上述链接. 创建DLL动态链接库 编辑头文件 mydll_3.h: #pragma on ...
- 赶快检查,木马可能已经植入服务器,Redis未授权访问漏洞记录,redis的key值出现backup要谨慎
问题描述:为图省事,很多时候我们在使用redis的时候会使用默认空密码,这就增加了安全隐患,如果有下属情况,那赶快去检查下redis,木马或许已经植入服务器,应尽快处理: 1.redis绑定在 0.0 ...
- ssh WARNING: UNPROTECTED PRIVATE KEY FILE!
前言 在 ssh -i 指定密钥文件 登录时,出现以下报错: Permissions 0644 for 'xxxx' are too open. It is required that your pr ...
- MFC编程中与编码方式有关的宏定义的使用
1 多字节字符集:char *strcpy(char *strDestination, const char *strSource); Unicode字符集:wchar_t *wcscpy(wchar ...
- [源码系列:手写spring] IOC第十节:bean的初始化和销毁方法
内容介绍 在Spring框架中,你可以使用以下几种方法定义bean的初始化和销毁: 使用注解方式: @PostConstruct:在bean的方法上添加@PostConstruct注解,该方法将在be ...
- 如果在安装32位Oracle客户端组件的情况下64位模式运行, 将出现此问题.
场景重现 在一台Windows 7 32-bit电脑上 安装了Oracle 11gR2 32-bit的客户端 用 VS2010 写的一个基于数据库驱动的项目 操作Oracle数据库都挺正常的 后来.. ...