'init
This commit is contained in:
50
BaiduTrans.py
Normal file
50
BaiduTrans.py
Normal file
@@ -0,0 +1,50 @@
|
||||
# 百度通用翻译API,不包含词典、tts语音合成等资源,如有相关需求请联系translate_api@baidu.com
|
||||
# coding=utf-8
|
||||
|
||||
import http.client
|
||||
import hashlib
|
||||
import urllib
|
||||
import random
|
||||
import json
|
||||
import time
|
||||
|
||||
appid = '20181013000218671' # 填写你的appid
|
||||
secretKey = '3CJvgUQRitUNeo7shcTJ' # 填写你的密钥
|
||||
|
||||
httpClient = None
|
||||
myurl = '/api/trans/vip/translate'
|
||||
|
||||
# fromLang = 'auto' # 原文语种
|
||||
# toLang = 'zh' # 译文语种
|
||||
# toLang = 'en' # 译文语种
|
||||
|
||||
salt = random.randint(32768, 65536)
|
||||
q = 'apple'
|
||||
|
||||
|
||||
def transBaidu(q='hello',fromLang='',toLang=''):
|
||||
# print('q---',q)
|
||||
sign = appid + q + str(salt) + secretKey
|
||||
sign = hashlib.md5(sign.encode()).hexdigest()
|
||||
global myurl
|
||||
myurl = myurl + '?appid=' + appid + '&q=' + urllib.parse.quote(
|
||||
q) + '&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)
|
||||
# print (type(result))
|
||||
# print ((result))
|
||||
# print('翻译结果-----',result['trans_result'][0]["dst"])
|
||||
time.sleep(1) #限制频率
|
||||
# print(result)
|
||||
return(result['trans_result'][0]["dst"])
|
||||
except Exception as e:
|
||||
print('error---',e)
|
||||
finally:
|
||||
if httpClient:
|
||||
httpClient.close()
|
||||
Reference in New Issue
Block a user