首页 > 代码库 > 百度翻译API
百度翻译API
1 #/usr/bin/env python3 2 #coding=utf8 3 4 """百度翻译api功能实现函数,本模块基于Python3.x实现,getTransResult(q)中参数q是需被翻译的内容,目前该函数的源语言默认英文,目标语言默认简体中文""" 5 6 7 import http.client 8 import hashlib 9 import urllib10 import random11 import demjson12 13 def getTransResult(q): 14 15 """16 从百度翻译API获取源语言翻译结果的实现函数。get请求字符串构造具体请参照百度翻译开发者文档17 fromLang&&toLang分别是源语言与目标语言,现阶段默认为英语与简体中文,后期可根据需求作为函数参数动态传入18 """19 20 appid = ‘xxxxxxxxxxxx‘ #开发者id21 secretKey = ‘xxxxxxxxxx‘ #开发者密钥22 23 24 httpClient = None25 myurl = ‘/api/trans/vip/translate‘26 #q = ‘hello baidu trans‘ #要翻译的内容27 fromLang = ‘en‘ #源语言28 toLang = ‘zh‘ #目标语言29 salt = random.randint(32768, 65536) #随机数30 31 sign = appid+q+str(salt)+secretKey #需要生成md5码的字符串32 33 m1 = hashlib.md5(sign.encode(encoding=‘utf-8‘))34 sign = m1.hexdigest()35 myurl = myurl+‘?appid=‘+appid+‘&q=‘+urllib.parse.quote(q)+‘&from=‘+fromLang+‘&to=‘+toLang+‘&salt=‘+str(salt)+‘&sign=‘+sign #get请求字符串36 37 try:38 httpClient = http.client.HTTPConnection(‘api.fanyi.baidu.com‘)39 httpClient.request(‘GET‘, myurl)40 #response是HTTPResponse对象41 response = httpClient.getresponse() #获取返回结果42 mresult = demjson.decode(response.read()) #json解码43 #print(mresult["trans_result"][0]["dst"])44 return mresult["trans_result"][0]["dst"]45 46 except Exception as e:47 print(e)48 finally:49 if httpClient:50 httpClient.close()51 52 53 if __name__ == "__main__":54 print(getTransResult("hello"))
百度翻译API
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。