手把手教你用Python调用彩云机器翻译API

news2024/11/25 23:14:13

一、引言

彩云这个小而美的机器翻译一直很低调,它让人眼前一亮的是之前我们分享的网页翻译插件,可以把外文网站翻译成英中对照的样式,便于我们学习。之前我们也写过文章介绍过:

PythonFan:如何用Google翻译英文网页成双语对照样式6 赞同 · 5 评论文章正在上传…重新上传取消

有时我们要它翻译内容较多的文件,可以通过Python来调用它的机器翻译API,突破网页版5000字符的限制。 下面我们来介绍一下如何调用其API。

二、实现过程

第一步,我们要进入到彩云科技的主页,如果是第一次登录,就要先注册这个网站,然后再点击顶部的【在线翻译】。

在线翻译

第二步,再点击页面顶部的【翻译API】。

第三点,点击右侧的【Python调用】栏目。

Python调用

第四步,点击代码框右上解的复制按钮,复制Python的demo代码至thonny或者PyCharm等其它IDLE工具中备用。

样例代码

第五步,点击右侧【申请访问令牌】,点击【彩云科技开放平台】进入到开放平台,进行账号申请,同时可以申请彩云小译的API令牌。

第六步,进入到彩云科技开放平台,点击注册,注册账号。

注册小牛科技开放平台

第七步,点击【创建令牌】,填写应用的名称,创建令牌。

第八步,点击【令牌】下面一串字母形成的超级链接,进入到令牌令牌页面,然后可以复制令牌(就是那一串数字和字母组成的字符串),放到Python代码中的token变量的右边。

第九步,我们加入token,把整个代码放到IDLE中,或者thonny中进行调试代码。官方的代码如下:

官方代码

为了让代码可以翻译字符串,我们把原代码进行了修改。"Source"那里改为字符串, 'content-type'那里json改为txt,最后把译文直接打印出来。

import requests
import json
 
url = "http://api.interpreter.caiyunai.com/v1/translator"
token = "你的令牌" #这里填写你自己的令牌
 
payload = {
        #"source" : ["Where there is a will, there is a way.", 
                     #"ColorfulClouds Weather is the best weather service."],
        "source" : "Where there is a will, there is a way.",
        "trans_type" : "en2zh",
        "request_id" : "demo",
        }
 
headers = {
        'content-type': "application/txt",
        'x-authorization': "token " + token,
}
 
response = requests.request("POST", url, data=json.dumps(payload), headers=headers)
 
#print(response.text)
resp = json.loads(response.text)['target']

print(resp)

三、代码优化

为了更好地调用这个代码,我进一步把以上代码中的翻译功能整合成为一个函数,这样嵌入到其它的程序中会更方便,也比较符合Python程序类的写法。

以下是我把彩云小译的Python代码移植到TransExcel中,可以批量把Excel文件中的A列翻译成B列,并保存。

注意当前目录下我们需要建一个config.txt里面写上【zh|en】或者【en|zh】这是为了便于控制语言翻译的方向。

import openpyxl
import os,json

url = "http://api.interpreter.caiyunai.com/v1/translator"
token = "ayvp8cntxz5e88encfi5"
workbooks=[wb for wb in os.listdir(os.getcwd()) if wb.endswith('.xlsx')]

def lang():
    with open("config.txt","r",encoding="utf-8") as f:
        line=f.readlines()
        from_lang,to_lang=line[0].strip().split("|")
    return from_lang,to_lang

def caiyun_api(content,from_lang,to_lang):
    payload = {
            "source" : content,
            "trans_type" : from_lang+str(2)+to_lang,
            "request_id" : "demo",
            }
     
    headers = {
            'content-type': "application/txt",
            'x-authorization': "token " + token,
    }
     
    response = requests.request("POST", url, data=json.dumps(payload), headers=headers)
    resp = json.loads(response.text)['target']
    return resp

def get_lst():
    from_lang,to_lang=lang()
    for workbook in workbooks:
        wb=openpyxl.load_workbook(workbook)
        ws=wb.active
        for cell0,cell1 in zip(ws['A'],ws['B']):
            if cell0.value!="":
                try:
                    cell1.value=caiyun_api(cell0.value,from_lang,to_lang)
                except Exception as exc:
                    print(exc)
        wb.save(workbook)
get_lst()

四、学后反思

  1. 彩云翻译还是比较良心,每个月送100万的免费翻译字符,而且翻译速度和翻译质量都还不错。
  2. 用Python调用API可以把Python的优势与API的功能相结合,实现多类型文件翻译和批量翻译,在不要求文本格式的情况,优化我们的翻译流程。
  3. 彩云小译免费额度用完后,额外购买是20元/100万字符,价格上还算优惠,也是比较良心。只是目前来看,采云小译的推广力度不够,很多人还不知道这款好用的翻译引擎。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/566222.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

c++学习——类和对象

类和对象的基本概念 类是自定义数据类型&#xff0c;是C语言的结构体进化而成的 对象是类实例化出的&#xff0c;用数据类型定义一个变量 #define _CRT_SECURE_NO_WARNINGS #include <iostream> using namespace std;class Maker //这个是类 { public:int a;//成员属性…

PostgreSQL EDB 公司推出新服务,ORACLE 平移到 POSTGRESQL 一体化服务

开头还是介绍一下群&#xff0c;如果感兴趣polardb ,mongodb ,mysql ,postgresql ,redis 等有问题&#xff0c;有需求都可以加群群内有各大数据库行业大咖&#xff0c;CTO&#xff0c;可以解决你的问题。加群请联系 liuaustin3 &#xff0c;在新加的朋友会分到2群&#xff08;共…

创建本地LocalHost-SSL证书

mkcert 使用方法 mkcert 是一个开源工具&#xff0c;用于快速生成有效的本地开发证书。它可以帮助开发人员在本地环境中使用 HTTPS 加密来模拟真实的生产环境。 安装 首先&#xff0c;你需要安装 mkcert 工具。以下是在常见操作系统上安装的命令&#xff1a; macOS 使用 Homebr…

集简云数据表无需代码连接抖音的方法

使用场景 抖音作为自媒体时代的主流平台&#xff0c;越来越多的企业选择通过短视频来推广自己的产品或者吸引更多粉丝。那么随时关注抖音视频下的评论&#xff0c;了解用户的想法和需求&#xff0c;并针对不同的评论提供更好的回应是每一位运营的重点工作之一&#xff0c;但是运…

利用 PRIMO 重构 M87 黑洞图像,普林斯顿高等研究院成功将「甜甜圈」变身「金戒指」...

By 超神经 内容一览&#xff1a;2019 年&#xff0c;「事件视界望远镜 (Event Horizon Telescope&#xff0c;简称 EHT)」全球研究团队发布了人类历史上第一张黑洞照片&#xff0c;受限于当时的观测条件&#xff0c;这张黑洞图像只呈现出一个模糊不清的轮廓。近日&#xff0c;天…

研发工程师玩转Kubernetes——自动扩缩容

在《研发工程师玩转Kubernetes——使用Deployment进行多副本维护》一文中&#xff0c;我们通过Deployment实现了多副本维护——即维持在一个确定数量的副本个数。而在现实场景中&#xff0c;我们往往需要根据服务的压力&#xff0c;采用水平&#xff08;横向&#xff09;扩容的…

分享给你这几款冷门好用的工具

分享一&#xff1a;Hi HiSlide Hi HiSlide是一个在线演示文稿制作工具&#xff0c;它可以帮助用户轻松地创建出色的演示文稿。以下是该网站的一些功能和特点&#xff1a; 多种模板选择**&#xff1a;Hi HiSlide提供了多种演示文稿模板&#xff0c;适合不同行业和场合的演示需…

chatgpt赋能python:Python%.6f:一门强大且易于学习的编程语言

Python%.6f&#xff1a;一门强大且易于学习的编程语言 Python是一门免费开源的高级编程语言&#xff0c;用于快速开发脚本、Web应用、科学计算、数据分析、人工智能等应用程序。Python的灵活性、易学性、可读性和强大的第三方库使其成为全球最受欢迎的编程语言之一。 Python的…

面对当下各种不确定性,如何面对,每天很忙碌,不慌

&#xff08;点击即可收听&#xff09; 疫情时期,都难,疫情之后,发现还更难 随着互联网的热度的下降,各大小公司纷纷勒紧裤腰带,受打击最大的无疑是底层打工人 每天一打开手机,会发现,一些大厂裁员信息霸榜头条,年龄也是一道坎 刚刚看到一个大v发的&#xff1a; 一个原先是跨国…

Go编程快闪之logrus日志库

成文耗时1小时&#xff0c;阅读3min&#xff0c;有用指数4颗星。 golang中常见的日志包是logrus&#xff0c; 根据logrus的胚子和我们的生产要求&#xff0c;给出一个生产可用的logrus实践姿势。 主谓宾定状补 logrus是一个结构化的、可插拔的、兼容golang标准log api的日志库。…

ARD2F智能电动机保护器在合盛硅业股份有限公司的应用

摘要&#xff1a;介绍安科瑞ARD2F智能电动机保护器在合盛硅业股份有限公司项目的应用。用于新疆西部合盛硅业20万吨密封胶项目及新疆合盛硅业新材料有限公司二期年产20万吨硅氧烷及下游深加工项目中电动机回路的参数测量、故障保护、起停控制以及后台通讯&#xff0c;为项目的安…

chatgpt赋能python:PythonWMI:掌握Windows管理工具的关键

Python WMI: 掌握Windows管理工具的关键 在Windows系统上&#xff0c;WMI (Windows Management Instrumentation)是一个无价的管理工具&#xff0c;允许用户监控和管理各种Windows组件&#xff0c;包括硬件、操作系统&#xff0c;和应用程序。在Python编程中&#xff0c;通过使…

Android Studio Flamingo 稳定版正式发布

作者 / Android Studio 产品经理 Steven Jenkins 我们非常激动地宣布用于构建 Android 应用的官方 IDE 最新稳定版—— Android Studio Flamingo&#x1f9a9; 现已发布&#xff01; Android Studio Flamingohttps://developer.android.google.cn/studio 此版本加入了多项改进&…

【30天熟悉Go语言】3 怀着Java看Go的编程规约

文章目录 一、前言二、语法Go和Java的语法区别 注释Go和Java的注释区别 三、代码规范四、API包五、总结和后续 一、前言 Go系列文章&#xff1a; GO开篇&#xff1a;手握Java走进Golang的世界2 Go开发环境搭建、Hello World程序运行 Go专栏传送链接&#xff1a;https://blog.cs…

ChatGPT之后,值得关注的垂直领域大模型

垂直领域大模型是指在特定的领域或行业中经过训练和优化的大型语言模型。与通用语言模型相比&#xff0c;垂直领域大模型更专注于某个特定领域的知识和技能&#xff0c;具备更高的领域专业性和实用性。 题图 from unsplash 与通用大模型相比&#xff0c;垂直领域大模型具有以下…

DMBOK知识梳理for CDGA/CDGP——第一章数据管理(附常考知识点)

第一章 数据管理 第一章在 CDGA|CDGP考试中分值占比均不是很高&#xff0c;主要侧重点是考概念性的知识&#xff0c;理解数据管理的目标原则、还有与其他概念的区别点&#xff0c;同时掌握几个关键核心的图&#xff08;车轮图、六边形图、语境关系图&#xff09;。总体来说难度…

ESP32 CAM 模块和 OpenCV 的二维码扫描器

概述 该项目是关于使用 ESP32 CAM 模块和 OpenCV 设计的二维码扫描仪或阅读器。我们将使用 ESP32 摄像头模块和 python 库开发一个程序和设备,我们可以用它来扫描二维码。使用 ESP32 CAM,项目变得更便宜。 QR 码现在已经成为我们日常生活的一部分,因为我们几乎在任何地方都…

JavaScript 中如何计算代码段运行时间

&#x1f468;&#x1f3fb;‍&#x1f4bb; 热爱摄影的程序员 &#x1f468;&#x1f3fb;‍&#x1f3a8; 喜欢编码的设计师 &#x1f9d5;&#x1f3fb; 擅长设计的剪辑师 &#x1f9d1;&#x1f3fb;‍&#x1f3eb; 一位高冷无情的编码爱好者 大家好&#xff0c;我是全栈 …

一起来学习文本怎么翻译吧

你是否曾经需要将一篇文章或一段文字翻译成另一种语言&#xff1f;翻译是一种非常重要的技能&#xff0c;它可以帮助我们更好地沟通和理解不同文化之间的差异。既然翻译这么重要&#xff0c;你知道文本怎么翻译才简单快捷吗&#xff1f;如果你还不会文本翻译的话&#xff0c;请…

Java实现支付宝沙箱环境支付,SDK接口远程调试

文章目录 1.测试环境2.本地配置3. 内网穿透3.1 下载安装cpolar内网穿透3.2 创建隧道 4. 测试公网访问5. 配置固定二级子域名5.1 保留一个二级子域名5.2 配置二级子域名 6. 使用固定二级子域名进行访问 转发自cpolar内网穿透的文章&#xff1a;Java支付宝沙箱环境支付&#xff0…