实践项目五:python调用百度API实现自动检测翻译
2017-07-11 22:42
1541 查看
python环境:python 3.4.3
1.百度翻译api:
百度翻译开放平台是百度翻译针对广大开发者提供的开放服务平台,提供多语种互译服务。 您只需要通过调用百度翻译API,传入待翻译的内容,并指定要翻译的源语言(支持源语言语种自动检测)和目标语言种类, 就可以得到相应的翻译结果。任何第三方应用或网站都可以通过使用百度翻译API为用户提供实时优质的多语言翻译服务,提升产品体验。
2.免费服务
百度翻译每月提供200万字符免费额度,超出后需要按照字符数收费。
3.开发者申请链接:点击打开链接(注册一个账号)
这个帮助文档链接:点击打开链接
4.最重要的是接入文档:介绍了详细的接入方法,还有各种语言的Demo.
这是DEMO的例子:
例:将apple从英文翻译成中文:
请求参数:
q=apple
from=en
to=zh
appid=2015063000000001
salt=1435660288
平台分配的密钥: 12345678
生成sign:
>拼接字符串1
拼接appid=2015063000000001+q=apple+salt=1435660288+密钥=12345678
得到字符串1 =2015063000000001apple143566028812345678
>计算签名sign(对字符串1做md5加密,注意计算md5之前,串1必须为UTF-8编码)
sign=md5(2015063000000001apple143566028812345678)
sign=f89f9594663708c1605f3d736d01d2d4
完整请求为:
http://api.fanyi.baidu.com/api/trans/vip/translate?q=apple&from=en&to=zh&appid=2015063000000001&salt=1435660288&sign=f89f9594663708c1605f3d736d01d2d4
也可以使用POST方法传送需要的参数。
因为我用的是python 3.4.3,没有了md5,这是解决方法:(Python3
--md5:点击打开链接)
修改 :
fromLang = 'auto' #翻译源语言=自动检测
toLang1 = 'auto' #译文语言 = 自动检测
可实现自动检测语言翻译。
运行结果:
我的源码:
1.百度翻译api:
百度翻译开放平台是百度翻译针对广大开发者提供的开放服务平台,提供多语种互译服务。 您只需要通过调用百度翻译API,传入待翻译的内容,并指定要翻译的源语言(支持源语言语种自动检测)和目标语言种类, 就可以得到相应的翻译结果。任何第三方应用或网站都可以通过使用百度翻译API为用户提供实时优质的多语言翻译服务,提升产品体验。
2.免费服务
百度翻译每月提供200万字符免费额度,超出后需要按照字符数收费。
3.开发者申请链接:点击打开链接(注册一个账号)
这个帮助文档链接:点击打开链接
4.最重要的是接入文档:介绍了详细的接入方法,还有各种语言的Demo.
这是DEMO的例子:
例:将apple从英文翻译成中文:
请求参数:
q=apple
from=en
to=zh
appid=2015063000000001
salt=1435660288
平台分配的密钥: 12345678
生成sign:
>拼接字符串1
拼接appid=2015063000000001+q=apple+salt=1435660288+密钥=12345678
得到字符串1 =2015063000000001apple143566028812345678
>计算签名sign(对字符串1做md5加密,注意计算md5之前,串1必须为UTF-8编码)
sign=md5(2015063000000001apple143566028812345678)
sign=f89f9594663708c1605f3d736d01d2d4
完整请求为:
http://api.fanyi.baidu.com/api/trans/vip/translate?q=apple&from=en&to=zh&appid=2015063000000001&salt=1435660288&sign=f89f9594663708c1605f3d736d01d2d4
也可以使用POST方法传送需要的参数。
因为我用的是python 3.4.3,没有了md5,这是解决方法:(Python3
--md5:点击打开链接)
修改 :
fromLang = 'auto' #翻译源语言=自动检测
toLang1 = 'auto' #译文语言 = 自动检测
可实现自动检测语言翻译。
运行结果:
我的源码:
#/usr/bin/env python #-*- coding:utf-8 -*- import urllib,hashlib import random import requests,sys def getTransText(in_text): q = in_text fromLang = 'auto' #翻译源语言=自动检测 toLang1 = 'auto' #译文语言 = 自动检测 appid = '***************' #APP ID salt = random.randint(32768, 65536) secretKey = '************' #密钥 #生成sign sign = appid+q+str(salt)+secretKey #计算签名sign(对字符串1做md5加密,注意计算md5之前,串1必须为UTF-8编码) m1 = hashlib.md5(sign.encode('utf-8')) sign = m1.hexdigest() #计算完整请求 myurl = '/api/trans/vip/translate' myurl = myurl+'?appid='+appid+'&q='+q+'&from='+fromLang+'&to='+toLang1+'&salt='+str(salt)+'&sign='+sign url = "http://api.fanyi.baidu.com"+myurl # 发送请求 url = url.encode('utf-8') res = requests.get(url) #转换为字典类型 res = eval(res.text) return (res["trans_result"][0]['dst']) while(True): in_text=input() print (in_text+' = '+getTransText(in_text))
相关文章推荐
- 翻译软件(用百度的API实现)Python
- 【Python】调用百度REST API实现语音识别
- 基于百度API的开源自动翻译.srt文件软件的实现的几个技术细节总结附源代码
- python 3调用百度OCR API实现剪贴板文字识别
- Linux python PyQt5调用百度API实现图片文字转换
- python调用百度REST API实现语音识别
- python调用新浪微博API项目实践
- 星火杯项目笔记——iOS调用有道API翻译句子、在AppDelegate里实现全局访问的sqlite实例【13-10-14】
- Python3--批量爬取数据之调用百度api进行翻译
- python调用新浪微博API项目实践
- Python 3调用百度OCR API实现剪贴板文字识别
- 【Python】Python的urllib、urllib2模块调用“百度翻译”API进行批量自动翻译
- 【Python】调用百度REST API实现语音识别
- 腾讯云cdn自动刷新api调用功能实现-python
- python实现百度、CSDN、淘宝、人人自动登录(第一季)
- python3模拟百度登录并实现百度贴吧签到示例分享(百度贴吧自动签到)
- python实现百度、CSDN、淘宝、人人自动登录(第一季)
- python 调用图灵机器人api实现简单的人机交互
- Java 实现在线翻译功能 调用微软Bing API
- python 实现redis 操作API 接口,提供其他程序调用