python百度翻译接口_利用python及百度翻译api实现名场面自动翻译20遍

利用python及百度翻译api实现名场面自动翻译20遍

1.在百度翻译api官网http://api.fanyi.baidu.com/api/trans/product/index注册,获取appid及密钥

2.在python官网下载任意版本编译器

3输入以下代码

import requests

import refrom json import loads

import json

import http.client

import hashlib

import urllib

import random

def C_to_E(q):

appid = '*************'  # 填写你的appid

secretKey = '****************'  # 填写你的密钥

httpClient = None

myurl = '/api/trans/vip/translate'

fromLang = 'zh'   #原文语种

toLang = 'en'   #译文语种

salt = random.randint(32768, 65536)

sign = appid + q + str(salt) + secretKey

sign = hashlib.md5(sign.encode()).hexdigest()

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)

her_anser=result['trans_result']

her_anser=her_anser[0]

her_anser=her_anser['dst']

return her_anser

except Exception as e:

print (e)

finally:

if httpClient:

httpClient.close()

def E_to_C(q):

appid = '****************'  # 填写你的appid

secretKey = '*****************'  # 填写你的密钥

httpClient = None

myurl = '/api/trans/vip/translate'

fromLang = 'en'   #原文语种

toLang = 'zh'   #译文语种

salt = random.randint(32768, 65536)

sign = appid + q + str(salt) + secretKey

sign = hashlib.md5(sign.encode()).hexdigest()

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)

her_anser=result['trans_result']

her_anser=her_anser[0]

her_anser=her_anser['dst']

return her_anser

except Exception as e:

print (e)

finally:

if httpClient:

httpClient.close()

if __name__ == '__main__':

txt=input('请输入中文:')

for i in range(1,20):

if i%2==0:

txt=C_to_E(txt)

else:

txt=E_to_C(txt)

print (txt)

本文禁止转载或摘编

--

--

--

分享到:

投诉或建议

评论

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值