python调用百度通用翻译API进行翻译
python调用百度通用翻译API
步骤
- python调用百度通用翻译API
- 1.百度翻译开放平台申请成为开发者
- 2.查看平台提供的技术文档
- 3.python调用百度翻译通用API进行翻译
1.百度翻译开放平台申请成为开发者
使用Baidu翻译API,首先需要去百度翻译开放平台申请成为开发者,在成为开发者之后,可获得APPID以及秘钥用于之后的API的调用。
百度翻译开放平台链接
申请成为开发者之后,申请使用百度翻译通用API可在【管理控制台】–【开发者信息】中查看自己的APPID以及秘钥。
2.查看平台提供的技术文档
- 接入方式
通用翻译API通过 HTTP 接口对外提供多语种互译服务。只需要通过调用通用翻译API,传入待翻译的内容,并指定要翻译的源语言(支持源语言语种自动检测)和目标语言种类,就可以得到相应的翻译结果。
通用翻译API HTTP 地址:
http://api.fanyi.baidu.com/api/trans/vip/translate - 签名生成方法
签名是为了保证调用安全,使用 MD5 算法生成的一段字符串,生成的签名长度为 32 位,签名中的英文字符均为小写格式。
生成方法:
Step1: 将请求参数中的 APPID(appid), 翻译 query(q, 注意为UTF-8编码), 随机数(salt), 以及平台分配的密钥按照 appid+q+salt+密钥的顺序拼接得到字符串str。
Step2: 对字符串 str 做 md5 ,得到 32 位小写的 sign。 - 输入参数
请求方式: 可使用 GET 或 POST 方式,如使用 POST 方式,Content-Type 请指定为:application/x-www-form-urlencoded
字符编码:统一采用 UTF-8 编码格式.
query 长度:为保证翻译质量,请将单次请求长度控制在 6000 bytes以内(汉字约为输入参数 2000 个)
- 输出参数
返回的结果是json格式,包含以下字段:
更加详细的文档内容可以参考通用翻译API接入文档
3.python调用百度翻译通用API进行翻译
中英互译的实现,可以根据需求对参数进行修改
def baiduTranslate(translate_text, flag=1):''':param translate_text: 待翻译的句子,len(q)<2000:param flag: 1:原句子翻译成英文;0:原句子翻译成中文:return: 返回翻译结果。For example:q=我今天好开心啊!result = {'from': 'zh', 'to': 'en', 'trans_result': [{'src': '我今天好开心啊!', 'dst': "I'm so happy today!"}]}'''appid = 'xxxxx' # 填写你的appidsecretKey = 'xxxxxx' # 填写你的密钥httpClient = Nonemyurl = '/api/trans/vip/translate' # 通用翻译API HTTP地址fromLang = 'auto' # 原文语种if flag:toLang = 'en' # 译文语种else:toLang = 'zh' # 译文语种salt = random.randint(3276, 65536)sign = appid + translate_text + str(salt) + secretKeysign = hashlib.md5(sign.encode()).hexdigest()myurl = myurl + '?appid=' + appid + '&q=' + urllib.parse.quote(translate_text) + '&from=' + fromLang + \'&to=' + toLang + '&salt=' + str(salt) + '&sign=' + sign# 建立会话,返回结果try:httpClient = http.client.HTTPConnection('api.fanyi.baidu.com')httpClient.request('GET', myurl)# response是HTTPResponse对象response = httpClient.getresponse()result_all = response.read().decode("utf-8")result = json.loads(result_all)# return resultreturn result['trans_result'][0]['dst']except Exception as e:print(e)finally:if httpClient:httpClient.close()
if __name__ == '__main__':# 手动录入翻译内容,q存放# q = raw_input("please input the word you want to translate:")q = "介绍一下整本书,比如是传主的人生,或者作者写这本书的特色。可参看目录、序言或简介等资料。"'''flag=1 输入的句子翻译成英文flag=0 输入的句子翻译成中文'''result = baiduTranslate(q, flag=1) # 百度翻译print("原句:"+q)print(result)
输出结果:
记录备用
python调用百度通用翻译API进行翻译相关推荐
- Python调用百度通用翻译api
Python调用百度通用翻译api 首先 首先 首先需要先去百度翻译api官网注册成为开发者,然后申领一下通用翻译的appid和密钥. 附上代码,默认为源语言自动识别,效果感觉不是太好,目标语言默认为 ...
- Python调用百度智能云API进行文本情感分析
Python调用百度智能云API进行文本情感分析 安装SDK 在调用前首先需要通过 pip 安装百度智能云 SDK. 可参考官方文档:https://cloud.baidu.com/doc/OCR/s ...
- Python 调用百度通用翻译接口
缘起 以为该类型的代码在CSDN上比比皆是,最后还是自己按照百度开发文档自己写了一个 库导入 import httpx from random import randint import hashli ...
- 使用Python调用百度地图的API在地图上添加标记
写在前面 近期博主工作太忙,快一个月没更新博客.今天跑了大半天的腿,被一堆破事儿弄的无比憋屈,写篇博客调节一下心情. 博主的目的是在地图上做一些标记,然后保存为html网页文件,这样方便我的软件调用, ...
- Python调用百度人脸识别API接口检测颜值
我们今天使用Python发送网络请求到百度人脸识别API接口. 我们需要requests模块,它需要安装,代码是 pip3 install requests 注意:不好意思各位,我的配额没了!如需使用 ...
- python调用百度智能云API请求(以自然语言处理——词法分析为例)
调用API的思路: 获得api的token 按官方文档发送链接 分析返回的结果 步骤一:获取API的token 如果不知道token是啥,或是不知道怎么获取token,请参考:https://blog ...
- 使用Python调用百度自然语言处理API
1.安装pip,执行pip install baidu-aip 2.然后在百度开放平台注册添加一个 自己的应用,生成自己的App ID,Api Key, Secret Key.然后就可以调用了,代码如 ...
- python调用百度翻译-Python 调用百度翻译API
由于实习公司这边做的是日文app,有时要看看用户反馈,对于我这种五十音图都没记住的人,表示百度翻译确实还可以.但不想每次都复制粘贴啊,google被墙也是挺蛋疼的事,所以用python结合baidu ...
- python 百度翻译api_Python如何通过百度翻译API实现翻译功能
本人英语不好,很多词组不认识,只能借助工具:百度翻译和谷歌翻译都不错,近期自学Python,就想能否自己设计一个百度翻译软件呢? 百度翻译开放平台:http://api.fanyi.baidu.com ...
- python有道翻译接口-Python调用有道翻译api实现翻译
通过调用有道翻译的api,实现中译英.其他语言译中文 代码: # coding=utf-8 import urllib import urllib2 import json import time i ...
最新文章
- CentOS7上编译多版本PHP并同时运行及systemd设置
- 用 jQuery Masonry 插件创建瀑布流式的页面(转)
- (并查集 带关系)Find them, Catch them -- poj -- 1703
- eclipse中配置tomcat之后指定项目部署的目录
- C++继承时的名字遮蔽(一)
- 简单的防盗链技术(过滤器原理)
- dumpbin发现没有入口函数_JavaScript基础之入口函数-2020版
- python 预测算法_Python 与金融数据使用机器学习算法预测交易策略
- 使用TopShelf做windows服务安装 ---安装参数解释
- WSL:适用于 Linux 的 Windows 子系统
- iphone越狱-------平刷回越狱前(未越狱)状态
- 【Android】ListView刷新、加载
- Java 2实用教程(第5版)实验指导与习题解答 第4章-类与对象
- 银耳椰椰——Alpha冲刺Day04
- 力扣刷题 DAY_88 贪心
- 数据分析的 5 种细分方法
- 【JAVA】 new ArrayList<> () {{}} 双花括号 是什么写法?
- Shave Beaver! CodeForces - 331B2 (线段树)
- Java控制无人机程序_深入了解ROS之编写无人机控制程序包
- PS快速选择照片背景
热门文章
- FLASH中打开网页链接,本地打不开的问题。
- 物理计算机仿真实验报告,大学物理实验实验报告模板
- linux ssd 4k对齐工具下载,4k对齐检测工具(as ssd benchmark)
- 第一章c语言入门,linux C语言程序设计 从入门到放弃——入门第一章
- badbody下_BadboyInstaller下载-录制脚本工具Badboy下载2.2.5 官方最新版-西西软件下载...
- 巴斯勒相机的ip掩码_子网掩码计算器让IP掩码计算不再难!
- C++(数据结构与算法):16---特殊矩阵的实现(对角矩阵、三对角矩阵、下三角矩阵、上三角矩阵、对称矩阵)
- 企业信息化认知的四个误区
- python数据分析与挖掘pdf_python数据分析与挖掘实战
- 2020 数学建模国赛 B 题参考思路