百度翻译&&金山词霸API
#/usr/bin/env python3
#coding=utf8 """百度翻译api功能实现函数,本模块基于Python3.x实现,getTransResult(q)中参数q是需被翻译的内容,目前该函数的源语言默认英文,目标语言默认简体中文""" import http.client
import hashlib
import urllib
import random
import demjson def getTransResult(q): """
从百度翻译API获取源语言翻译结果的实现函数。get请求字符串构造具体请参照百度翻译开发者文档
fromLang&&toLang分别是源语言与目标语言,现阶段默认为英语与简体中文,后期可根据需求作为函数参数动态传入
""" appid = 'xxxxxxxxxxxx' #开发者id
secretKey = 'xxxxxxxxxx' #开发者密钥 httpClient = None
myurl = '/api/trans/vip/translate'
#q = 'hello baidu trans' #要翻译的内容
fromLang = 'en' #源语言
toLang = 'zh' #目标语言
salt = random.randint(32768, 65536) #随机数 sign = appid+q+str(salt)+secretKey #需要生成md5码的字符串 m1 = hashlib.md5(sign.encode(encoding='utf-8'))
sign = m1.hexdigest()
myurl = myurl+'?appid='+appid+'&q='+urllib.parse.quote(q)+'&from='+fromLang+'&to='+toLang+'&salt='+str(salt)+'&sign='+sign #get请求字符串 try:
httpClient = http.client.HTTPConnection('api.fanyi.baidu.com')
httpClient.request('GET', myurl)
#response是HTTPResponse对象
response = httpClient.getresponse() #获取返回结果
mresult = demjson.decode(response.read()) #json解码
#print(mresult["trans_result"][0]["dst"])
return mresult["trans_result"][0]["dst"] except Exception as e:
print(e)
finally:
if httpClient:
httpClient.close() if __name__ == "__main__":
print(getTransResult("hello"))
由于百度翻译不提供音标、发音之类的内容很是不方便,在百度翻译页面上发现数据来自金山词霸,于是乎用金山词霸看看
#/usr/bin/env python3
#coding=utf8 “”“金山词霸版”“” import http.client
import hashlib
import urllib
import random
import json def getTransResult(q,type = "json"): httpClient = None
myurl = '/api/trans/vip/translate'
#q = 'hello baidu trans' #要翻译的内容
myurl = "/api/dictionary.php?w="+q+"&type="+type+"&key=xxxxxxxxxxxx" #开发者Key try:
httpClient = http.client.HTTPConnection('dict-co.iciba.com')
httpClient.request('GET', myurl)
#response是HTTPResponse对象
response = httpClient.getresponse() #获取返回结果
mresult = json.loads(response.read().decode("utf-8")) #print(mresult)
return mresult except Exception as e:
print(e)
finally:
if httpClient:
httpClient.close() if __name__ == "__main__":
print(getTransResult("hello"))
要啥有啥感觉棒棒哒
百度翻译&&金山词霸API的更多相关文章
- 百度翻译新API C#版在 winform,Asp.Net的小程序
3月的下午,在C#群里日常装逼(聊天), 一兄弟说百度翻译有没有winfrom上用的Demo,问了一天 嫌烦了 我就干脆自己写个: PS 百度上的部分代码害死人啊 api地址都换的不成样了, 还 ...
- 使用百度翻译的API接口
http://api.fanyi.baidu.com/api/trans/product/desktop 这是申请的接口地址,会得到一个APPID和一个钥密 然后下载PHP的对应的代码 有一个PHP文 ...
- 破解百度翻译页面api参数加密
我们的目标 https://fanyi.baidu.com/ 找到获取翻译的请求 是这个 https://fanyi.baidu.com/v2transapi 查看一下post提交的表单,是 ...
- 基于百度翻译API开发属于自己的翻译工具
你是否每天使用着网页翻译工具?你是否遇到过这种情况,上网过程中遇到一个很长的单词但是又不能复制,要开两个浏览器,一个打开百度翻译,照着另一个网页输入单词?你安装了各种翻译软件后,又删除,只因忍受不了那 ...
- 调用百度翻译 API 来翻译网站信息
之前说过jquery.i18n.js 来做网站的中英翻译,前提就得做一套中文内容,一套英文内容来解决,好处是中英翻译可以准确无误,本篇文章我们来看一下调用百度翻译的 API 来进行网站的翻译,但是翻译 ...
- python截图+百度ocr(图片识别)+ 百度翻译
一直想用python做一个截图并自动翻译的工具,恰好最近有时间就在网上找了资料,根据资料以及自己的理解做了一个简单的截图翻译工具.整理一下并把代码放在github给大家参考.界面用python自带的G ...
- WP8.1小梦词典开发2:百度翻译API使用
原文出自:http://www.bcmeng.com/api2/ 小梦昨天和大家分享了WP8.1金山词霸API使用方法,今天继续分享windows phone 8.1中百度翻译API的使用方法.和昨天 ...
- C# 调用百度翻译Api
这是简单的界面.用的是wpf,winform也可以 具体的操作类 public partial class MainWindow : Window { string url = "" ...
- Python 调用百度翻译API
由于实习公司这边做的是日文app,有时要看看用户反馈,对于我这种五十音图都没记住的人,表示百度翻译确实还可以.但不想每次都复制粘贴啊,google被墙也是挺蛋疼的事,所以用python结合baidu ...
随机推荐
- HQL 参数绑定、唯一结果、分页、投影总结(上)
我们先总结一下HQL语句常用语法: from子句:; select子句:用于选取对象和属性; where子句:用于表达查询语句的限制条件; 使用表达式:一般用在where子句中; order by子句 ...
- Centos 7环境下编译mysql 5.7
首先在编译之前,我们要了解相关mysql 5.7的编译选项,官网编译选项地址:http://dev.mysql.com/doc/refman/5.7/en/source-configuration-o ...
- Hibernate 测试分析 好多题都是没认真看题错了。
此题目考查的是对Hibernate中交叉连接的理解.HQL支持SQL风格的交叉连接查询,交叉连接适用于两个类之间没有定义任何关联时.在where字句中,通过属性作为筛选条件,如统计报表数据.使用交叉连 ...
- I/O多路复用 SELECT POLL -- 内核实现
等待队列 先补充个基础知识――等待队列 认识 定义 wait_queue_head_t wait_queue; 初始化 init_waitqueue_head(&wait_queue); 等待 ...
- OC语言构造方法
OC语言构造方法 一.构造方法 (一)构造方法的调用 完整的创建一个可用的对象:Person *p=[Person new]; New方法的内部会分别调用两个方法来完成2件事情,1)使用alloc方法 ...
- 在 Linux 中用 nmcli 命令绑定多块网卡
今天,我们来学习一下在 CentOS 7.x 中如何用 nmcli(Network Manager Command Line Interface:网络管理命令行接口)进行网卡绑定. 网卡(接口)绑定是 ...
- [转载]javaEE规范和SSH三大框架到底有什么关系
转载自: http://blog.csdn.net/bingjing12345/article/details/20641891 1994-2000 年是互联网的大航海时代. 请注意,下面的时间点及其 ...
- HDU 4898 The Revenge of the Princess’ Knight ( 2014 Multi-University Training Contest 4 )
题意:给定一个环形字符串,让他把它分成k份,使得最大的字典序 最小. 思路:二分答案,首先很明显答案所有可能是 n*n种 排序可以先求出最长公共前缀,这样比较就只需要比较公共前缀的下一位就能比较出两 ...
- 如何提高Service的优先级避免被杀死或者杀死后如何再次重启Service?
2014-01-21 16:45:02 我们知道,当进程长期不活动时,如果系统资源吃紧,会杀死一些Service,或不可见的Activity等所在的进程. 如何避免Service被系统杀死,随便在网上 ...
- Maven配置中scope说明
Maven环境搭建完成后,需要去pom.xml文件中配置相关使用的jar架包. 如上图,架包选定之后需要配置对应的scope属性,下面来简单说下这些属性选项的含义: 1. compile,缺省值,适用 ...