目录
背景
实现Excel表批量翻译,解除百度翻译一次只能翻译5000字数的限制。
源代码
百度翻译api
这里直接使用大佬已经写好的代码,自己稍加改动。账号密码需要自行去百度翻译开放平台注册。
翻译语言 中文-zh 英语-en 更多语种可见百度翻译开发平台文档link.
baidu_fanyi_api.py
import urllib.request
import urllib.parse
import json
import hashlib
import time, re
encoding = 'utf-8' # 编码用utf-8
salt = '666' #随机数
appid = input('请输入百度翻译开放平台账号:') # 账号
secret_key = input('请输入百度翻译开放平台密码:')# 密码
# 请求失败码
REQUEST_FAILED = -1
# 正则匹配
settings_regex = r"\s*\'.+\'\s*=>\s*.+"
def getMD5(content):
m2 = hashlib.md5()
m2.update(content.encode(encoding))
return m2.hexdigest()
def getTranslateResponce(url, data):
data = urllib.parse.urlencode(data).encode('utf-8')
response = urllib.request.urlopen(url, data)
return response.read().decode('utf-8')
def trans(content):
url = 'http://api.fanyi.baidu.com/api/trans/vip/translate'
data = {
}
data['appid'] = appid
data['salt'] = salt
data['from'] = 'auto'# 源语言语言自动检测
data['to'] = 'zh' # 目标语言
data['q'