一、灵感来源
1、最近在学习python爬虫,发现现在的百度翻译限制爬虫了,在网上找到了一些文档,说现在都限制反爬,让我一顿失望,爬虫的时候会报:{"errno":997,"errmsg":"未知错误","query":"he","from":"en","to":"zh","error":997}的错误;但是还是让我找到了解决方案,有位博主用5行代码写出了对应调用对应接口的程序,我是特别膜拜,就大树底下好乘凉,你懂得,借鉴借鉴。这边奉上对应博主文章链接,有兴趣的伙伴,可以从他的文档开始入手。
【python】5行代码实现百度翻译api接口调用_XavierJ的博客-CSDN博客
- 但是运用这种方式有个致命的缺点就是每次只能翻译一个单词,而且单词里面不能有特殊符号,比如翻译hello,world就会报错,这对于严谨的我们来说肯定接受不了,竟然百度限制了反爬,那我们加入百度开放的API不就好了。打不过就加入(真香!!!)。
- 运用申请的百度API自己开发一个本地的翻译软件
- 申请百度翻译API:如何申请百度翻译API_360新知
- API接口文档(通用翻译)
欢迎使用通用翻译API,本文档将指导您如何快速接入。
- 使用您的百度账号登录百度翻译开放平台(http://api.fanyi.baidu.com);
- 注册成为开发者,获得 APPID ;
- 进行开发者认证(如仅需标准版可跳过);
- 开通通用翻译API服务:开通链接;
- 参考技术文档和 Demo 编写代码。
通用翻译API通过 HTTP 接口对外提供多语种互译服务。您只需要通过调用通用翻译API,传入待翻译的内容,并指定要翻译的源语言(支持源语言语种自动检测)和目标语言种类,就可以得到相应的翻译结果。
通用翻译API HTTPS 地址:
https://fanyi-api.baidu.com/api/trans/vip/translate
签名是为了保证调用安全,使用 MD5 算法生成的一段字符串,生成的签名长度为 32 位,签名中的英文字符均为小写格式。
生成方法:
Step1. 将请求参数中的 APPID(appid), 翻译 query(q,注意为UTF-8编码),随机数(salt),以及平台分配的密钥(可在管理控制台查看) 按照 appid+q+salt+密钥的顺序拼接得到字符串 1。Step2. 对字符串 1 做 md5 ,得到 32 位小写的 sign。注:1. 待翻译文本(q)需为 UTF-8 编码;2. 在生成签名拼接 appid+q+salt+密钥 字符串时,q 不需要做 URL encode,在生成签名之后,发送 HTTP 请求之前才需要对要发送的待翻译文本字段 q 做 URL encode;3.如遇到报 54001 签名错误,请检查您的签名生成方法是否正确,在对 sign 进行拼接和加密时,q 不需要做 URL encode,很多开发者遇到签名报错均是由于拼接 sign 前就做了 URL encode;4.在生成签名后,发送 HTTP 请求时,如果将 query 拼接在 url 上,需要对 query 做 URL encode。
请求方式: 可使用 GET 或 POST 方式,如使用 POST 方式,Content-Type 请指定为:application/x-www-form-urlencoded字符编码:统一采用 UTF-8 编码格式query 长度:为保证翻译质量,请将单次请求长度控制在 6000 bytes以内(汉字约为输入参数 2000 个)
字段名
类型
是否必填
描述
备注
q
string
是
请求翻译query
UTF-8编码
from
string
是
翻译源语言
可设置为auto
to
string
是
翻译目标语言
不可设置为auto
appid
string
是
APP ID
可在管理控制台查看
salt
string
是
随机数
可为字母或数字的字符串
sign
string
是
签名
appid+q+salt+密钥的MD5值
以下字段仅开通了词典、TTS用户需要填写
tts
integer
否
是否显示语音合成资源
0-显示1-不显示
dict
integer
否
是否显示词典资源
0-显示1-不显示
以下字段仅开通了”我的术语库“用户需要填写
action
integer
否
判断是否需要使用自定义术语干预API
1-是0-否
返回的结果是json格式,包含以下字段:
字段名
类型
描述
备注
from
string
源语言
返回用户指定的语言,或者自动检测出的语种(源语言设为 auto 时)
to
string
目标语言
返回用户指定的目标语言
trans_result
array
翻译结果
返回翻译结果,包括 src 和 dst 字段
trans_result.*.src
string
原文
接入举例中的“apple”
trans_result.*dst
string
译文
接入举例中的“苹果”
error_code
integer
错误码
仅当出现错误时显示
以下字段仅开通了词典、TTS用户可见
src_tts
string
原文tts链接
mp3格式,暂时无法指定发音
dst_tts
string
译文tts链接
mp3格式,暂时无法指定发音
dict
string
中英词典资源
返回中文或英文词典资源,包含音标,简明释义等内容
例如:将英文单词 apple 翻译成中文:
请求参数:
q=applefrom=ento=zhappid=2015063000000001(请替换为您的appid)salt=1435660288(随机码)平台分配的密钥: 12345678
生成签名sign:
Step1. 拼接字符串1:拼接appid=2015063000000001+q=apple+salt=1435660288+密钥=12345678得到字符串1:“2015063000000001apple143566028812345678”Step2. 计算签名:(对字符串1做md5加密)sign=md5(2015063000000001apple143566028812345678),得到sign=f89f9594663708c1605f3d736d01d2d4
拼接完整请求:
http://api.fanyi.baidu.com/api/trans/vip/translate?q=apple&from=en&to=zh&appid=2015063000000001&salt=1435660288&sign=f89f9594663708c1605f3d736d01d2d4
注:也可使用 POST 方式,如 POST 方式传送,Content-Type 请指定为:application/x-www-form-urlencoded
通用翻译API支持语种数已达 201种,完整列表如下。其中,对于常见语种列表内的语种,所有用户均可调用。对于非常见语种,仅企业已认证的尊享版用户可调用,未认证的非尊享版用户调用将返回错误。源语言语种不确定时可设置为 auto,目标语言语种不可设置为 auto。但对于非常用语种,语种自动检测可能存在误差。常见语种列表
名称
代码
名称
代码
名称
代码
自动检测
auto
中文
zh
英语
en
粤语
yue
文言文
wyw
日语
jp
韩语
kor
法语
fra
西班牙语
spa
泰语
th
阿拉伯语
ara
俄语
ru
葡萄牙语
pt
德语
de
意大利语
it
希腊语
el
荷兰语
nl
波兰语
pl
保加利亚语
bul
爱沙尼亚语
est
丹麦语
dan
芬兰语
fin
捷克语
cs
罗马尼亚语
rom
斯洛文尼亚语
slo
瑞典语
swe
匈牙利语
hu
繁体中文
cht
越南语
vie
完整语种列表
中文首字母
名称
代码
语种检测
名称
代码
语种检测
名称
代码
语种检测
A
阿拉伯语
ara
是
爱尔兰语
gle
是
奥克语
oci
是
阿尔巴尼亚语
alb
是
阿尔及利亚阿拉伯语
arq
否
阿肯语
aka
否
阿拉贡语
arg
否
阿姆哈拉语
amh
是
阿萨姆语
asm
是
艾马拉语
aym
否
阿塞拜疆语
aze
是
阿斯图里亚斯语
ast
是
奥塞梯语
oss
否
爱沙尼亚语
est
是
奥杰布瓦语
oji
否
奥里亚语
ori
是
奥罗莫语
orm
否
B
波兰语
pl
是
波斯语
per
是
布列塔尼语
bre
是
巴什基尔语
bak
否
巴斯克语
baq
是
巴西葡萄牙语
pot
否
白俄罗斯语
bel
是
柏柏尔语
ber
是
邦板牙语
pam
否
保加利亚语
bul
是
北方萨米语
sme
否
北索托语
ped
否
本巴语
bem
否
比林语
bli
否
比斯拉马语
bis
否
俾路支语
bal
否
冰岛语
ice
是
波斯尼亚语
bos
是
博杰普尔语
bho
否
C
楚瓦什语
chv
否
聪加语
tso
否
D
丹麦语
dan
是
德语
de
是
鞑靼语
tat
是
掸语
sha
否
德顿语
tet
否
迪维希语
div
否
低地德语
log
是
E
俄语
ru
是
F
法语
fra
是
菲律宾语
fil
是
芬兰语
fin
是
梵语
san
否
弗留利语
fri
否
富拉尼语
ful
否
法罗语
fao
否
G
盖尔语
gla
否
刚果语
kon
否
高地索布语
ups
否
高棉语
hkm
是
格陵兰语
kal
否
格鲁吉亚语
geo
是
古吉拉特语
guj
是
古希腊语
gra
否
古英语
eno
否
瓜拉尼语
grn
否
H
韩语
kor
是
荷兰语
nl
是
胡帕语
hup
否
哈卡钦语
hak
否
海地语
ht
否
豪萨语
hau
否
黑山语
mot
否
J
吉尔吉斯语
kir
否
加利西亚语
glg
是
加拿大法语
frn
否
加泰罗尼亚语
cat
是
捷克语
cs
是
K
卡拜尔语
kab
是
卡纳达语
kan
是
卡努里语
kau
否
卡舒比语
kah
否
康瓦尔语
cor
否
科萨语
xho
是
科西嘉语
cos
否
克里克语
cre
否
克里米亚鞑靼语
cri
否
克林贡语
kli
否
克罗地亚语
hrv
是
克丘亚语
que
否
克什米尔语
kas
否
孔卡尼语
kok
否
库尔德语
kur
是
L
拉丁语
lat
是
老挝语
lao
否
罗马尼亚语
rom
是
拉特加莱语
lag
否
拉脱维亚语
lav
是
林堡语
lim
否
林加拉语
lin
否
卢干达语
lug
否
卢森堡语
ltz
否
卢森尼亚语
ruy
否
卢旺达语
kin
是
立陶宛语
lit
是
罗曼什语
roh
否
罗姆语
ro
否
逻辑语
loj
否
M
马来语
may
是
缅甸语
bur
是
马拉地语
mar
否
马拉加斯语
mg
是
马拉雅拉姆语
mal
是
马其顿语
mac
是
马绍尔语
mah
否
迈蒂利语
mai
是
曼克斯语
glv
否
毛里求斯克里奥尔语
mau
否
毛利语
mao
否
孟加拉语
ben
是
马耳他语
mlt
是
苗语
hmn
否
N
挪威语
nor
是
那不勒斯语
nea
否
南恩德贝莱语
nbl
否
南非荷兰语
afr
是
南索托语
sot
否
尼泊尔语
nep
是
P
葡萄牙语
pt
是
旁遮普语
pan
是
帕皮阿门托语
pap
否
普什图语
pus
否
Q
齐切瓦语
nya
否
契维语
twi
否
切罗基语
chr
否
R
日语
jp
是
瑞典语
swe
是
S
萨丁尼亚语
srd
否
萨摩亚语
sm
否
塞尔维亚-克罗地亚语
sec
否
塞尔维亚语
srp
是
桑海语
sol
否
僧伽罗语
sin
是
世界语
epo
是
书面挪威语
nob
是
斯洛伐克语
sk
是
斯洛文尼亚语
slo
是
斯瓦希里语
swa
是
索马里语
som
是
塞尔维亚语(西里尔)
src
否
T
泰语
th
是
土耳其语
tr
是
塔吉克语
tgk
是
泰米尔语
tam
是
他加禄语
tgl
是
提格利尼亚语
tir
否
泰卢固语
tel
是
突尼斯阿拉伯语
tua
否
土库曼语
tuk
否
W
乌克兰语
ukr
是
瓦隆语
wln
是
威尔士语
wel
是
文达语
ven
否
沃洛夫语
wol
否
乌尔都语
urd
是
X
西班牙语
spa
是
希伯来语
heb
是
希腊语
el
是
匈牙利语
hu
是
西弗里斯语
fry
是
西里西亚语
sil
否
希利盖农语
hil
否
下索布语
los
否
夏威夷语
haw
否
新挪威语
nno
是
西非书面语
nqo
否
信德语
snd
否
修纳语
sna
否
宿务语
ceb
否
叙利亚语
syr
否
巽他语
sun
否
Y
英语
en
是
印地语
hi
是
印尼语
id
是
意大利语
it
是
越南语
vie
是
意第绪语
yid
否
因特语
ina
否
亚齐语
ach
否
印古什语
ing
否
伊博语
ibo
否
伊多语
ido
否
约鲁巴语
yor
否
亚美尼亚语
arm
是
伊努克提图特语
iku
否
伊朗语
ir
否
Z
中文(简体)
zh
是
中文(繁体)
cht
是
中文(文言文)
wyw
是
中文(粤语)
yue
是
扎扎其语
zaz
否
中古法语
frm
否
祖鲁语
zul
否
爪哇语
jav
否
当翻译结果无法正常返回时,请参考下表处理:
错误码
含义
解决方案
52000
成功
52001
请求超时
请重试
52002
系统错误
请重试
52003
未授权用户
请检查appid是否正确或者服务是否开通
54000
必填参数为空
请检查是否少传参数
54001
签名错误
请检查您的签名生成方法
54003
访问频率受限
请降低您的调用频率,或进行身份认证后切换为高级版/尊享版
54004
账户余额不足
请前往管理控制台为账户充值
54005
长query请求频繁
请降低长query的发送频率,3s后再试
58000
客户端IP非法
检查个人资料里填写的IP地址是否正确,可前往开发者信息-基本信息修改
58001
译文语言方向不支持
检查译文语言是否在语言列表里
58002
服务当前已关闭
请前往管理控制台开启服务
90107
认证未通过或未生效
请前往我的认证查看认证进度
词典和语音合成资源为企业尊享版用户专属增值服务。如需使用,请先进行企业认证并开通尊享版服务,之后在开发者信息—通用翻译API—服务信息处申请开通词典或语音合成资源,请详细注明您的使用场景,审核通过后即可使用。资源开通后,API 翻译结果中将默认附带 dict(词典)和 tts(语音合成)字段,仅对中英、英中互译有效。词典资源:
词典分中英词典,由于每个词属性不同,词典结果不一定包含所有部分。如源语言为中文,词典数据包括:拼音、词性、中文释义、英文释义、近义词等资源。如源语言为英文,词典数据包括:英文释义、中文释义、音标、核心词汇类别等。注:单个 query 需为词、词组或短语,如 query 为句子,则 dict 字段为空。
语音合成资源:
语音合成资源包含 query 原文、译文的发音,以 mp3 文件格式提供。注:单个query内不支持分段,只有1段且字符数量不超过200的query才会返回tts字段。
自定义术语库是百度翻译最新推出的 API 增值服务,如果您认为通用翻译API对于某些术语翻译不准确,可在“管理控制台-我的术语库”页面填写您认为正确的原文和译文,启用术语库,并在接口 URL 增加“&action=1”,即可在翻译结果中看到干预效果(提交后需等待 10 分钟方可生效)。需要提醒您的是:因翻译模型并非对术语的一一替换,而是将您填写的术语翻译与原翻译进行对比和计算。如您填写的翻译与原译文差异过大,则可能导致干预后结果有错乱。此外,术语干预仅适用于专有名词、术语的自定义,目前暂不支持针对 HTML 代码(如<p> <div>)原样输出,即:您暂时无法在原文和译文都填写英文单词“text”。
1. 如何在一次请求中翻译多个单词或者多段文本?
您可以在发送的字段 q 中用换行符(在多数编程语言中为转义符号 。其中 是需要能被程序解析出来的换行符而不是字符串 ),您可以用换行符来分隔要翻译的多个单词或者多段文本,这样您就能得到多段文本独立的翻译结果了。注意在发送请求之前需对 q 字段做 URL encode!
2. 什么是URL encode?
网络标准RFC 1738规定了URL中只能使用英文字母、阿拉伯数字和某些标点符号,不能使用其他文字和符号。如果您需要翻译的文本里面出现了不在该规定范围内的字符(比如中文),需要通过URL encode将需要翻译的文本做URL编码才能发送HTTP请求。大部分编程语言都有现成的URL encode函数,具体使用方法可以针对您使用的编程语言自行搜索。
3. 通用翻译API中,字符数量如何统计?
字符数量的统计以翻译的源语言字符长度为标准。一个汉字、一个英文字母、一个标点符号等均记为一个字符。空格、html标签等均计入在内。
4. 单次翻译请求是否有字符数限制?
为保证您的使用体验,请将单次翻译文本长度限定为6000字节以内(汉字约为2000个字符)。此外,高峰时期单次请求文本过长或将导致翻译超时。您可将query分多次请求。
5. 为什么我的请求总是返回签名错误(错误码54001)?
54001表示签名错误,请检查按照如下步骤检查您的签名生成方法是否正确:1. appid+q+salt+密钥 拼接成的字符串做MD5得到32位小写的sign,确保要翻译的文本q为UTF8格式;2. 在生成签名拼接 appid+q+salt+密钥 字符串时,q不需要做URL encode,在生成签名之后,发送HTTP请求之前才需要对要发送的待翻译文本字段q做URL encode。很多开发者遇到签名报错均是由于拼接sign前就做了URL encode,或在拼接url时对query做了两次urlencode。如有不明白可前往 https://tool.chinaz.com/tools/urlencode.aspx 验证;3. 如果您无法确认自己生成签名的结果是否正确,可以将您生成的签名结果和在MD5在线加密 - MD5加密工具 - MD5在线生成中生成的常规md5加密-32位小写签名结果对比;4. 如您使用POST方式传送,Content-Type请指定为:application/x-www-form-urlencoded;5. 请参考上方各语言Demo代码文档仔细检查。
6. 为什么我的请求会返回 54003?
54003 表示请求频率超限,请降低您的请求频率。对于标准版服务,您的 QPS(每秒请求量)=1,如需更大频率,请先进行身份认证,认证通过后可切换为高级版(适用于个人,QPS=10)或尊享版(适用于企业,QPS=100)
7. 为什么我的请求会返回 52001?
52001 表示请求超时,请检查按照如下步骤检查您的签名生成方法是否正确:1. 您传入的 query 长度是否超长?建议将原文采用" "分段请求;2. 如间隔一段时间再次请求,是否可正常返回结果?如果不可以,请检查您所填写的原文或译文语种是否在支持的语种列表里。
8. 为什么我的请求会返回58003?
因黑产采用不正当手段收集用户APPID及密钥,由此产生的盗刷字符量现象日益猖獗,系统风控增加了 IP 校验规则,如同一 IP 当日使用多个 APPID 发送翻译请求,则该IP将被封禁当日请求权限,次日解封。但由于 IP 多变,应用场景复杂,难免出现误伤正常使用的情况。如您属正常使用,但出现 58003 的提示,请发送邮件至 translate_api@baidu.com,同时提供如下信息。我方在收到邮件后将与您取得联系,核实后将解除封禁。公司名称:产品名称:联系人:联系方式:服务器IP:APPID:注:1)如提供信息不全,将影响审核通过率。2)请不要将您的 APPID 及密钥泄露出去,也不要填写到任何第三方软件中,包括“SCITranslate”、“微信学英语”、“Potplayer”等软件以及各类计算机辅助翻译工具插件。如因此造成密钥泄露形成经济损失,或因此被封禁,百度翻译将有权拒绝解封。
9. 如果我需要翻译整个网页,尖括号内的标签无法原样输出,怎么办?
翻译API会将传入的所有字符串当做可翻译字符,目前暂时无法区分哪些部分需原样保留,因此 API 不适合直接处理 HTML 文件。您可将 HTML 文件进行译前处理,抽取出待翻译文本,传入 API 翻译后再回填。
10. 是否支持对译文中的术语结果进行修改?
已认证用户可进入“管理控制台→ 我的术语库”维护术语列表,同时开通“干预通用翻译API结果”。开通后,您将可对译文中的术语翻译结果进行优化和修正。请注意:干预通用翻译API结果将可能导致翻译延时增长。因此在无需干预结果时可将开关关闭。如术语干预功能无法满足您的需要,或有更多意见或建议,可联系translate_api@baidu.com。
11. 我应该如何获取词典、语音合成资源结果?
接入文档与通用翻译API一致,接入流程上无变化。与未开通词典、语音合成服务相比,仅在返回结果处增加 tts、dict 字段,请注意辨别字段名称。举例:(1)query=apple,语言方向为英到中未接入资源时,返回结果为:
{
"from": "en",
"to": "zh",
"trans_result": [
{
"src": "apple",
"dst": "苹果"
}
]
}
接入词典、语音合成资源后,返回结果为:
{
"from": "en",
"to": "zh",
"trans_result": [
{
"src": "apple",
"dst": "苹果",
"src_tts": "https://fanyiapp.cdn.bcebos.com/api/tts/95e906875b87d342d7325a36a4e1ab42.mp3",
"dst_tts": "https://fanyiapp.cdn.bcebos.com/api/tts/62f4ff87617655bc1f65e24cf4ed4963.mp3",
"dict": "{"lang":"1","word_result":{"simple_means":{"word_name":"apple","from":"original","word_means":["苹果"],"exchange":{"word_pl":["apples"]},"tags":{"core":["高考","考研"],"other":[""]},"symbols":[{"ph_en":"ˈæpl","ph_am":"ˈæpl","parts":[{"part":"n.","means":["苹果"]}],"ph_other":""}]}}}"
}
]
}
(2)query=中国,语言方向为中到英未接入资源时,返回结果为:
{
"from": "zh",
"to": "en",
"trans_result": [
{
"src": "中国",
"dst": "China"
}
]
}
接入词典、语音合成资源后,返回结果为:
{
"from": "zh",
"to": "en",
"trans_result": [
{
"src": "中国",
"dst": "China",
"src_tts": "https://fanyiapp.cdn.bcebos.com/api/tts/d943b8e0e31e8d0ea8879dde5d41f016.mp3",
"dst_tts": "https://fanyiapp.cdn.bcebos.com/api/tts/2e2312a1d33e2ff453f92d5d95277e13.mp3",
"dict": "{"lang":"0","word_result":{"simple_means":{"symbols":[{"word_symbol":"zhōng guó","parts":[{"part_name":"","means":[{"text":"China","part":"n.","word_mean":"China","means":["中国"]},{"text":"Sino-","part":"comb.","word_mean":"Sino-","means":["中国的","中国人(的)"]}]}]}],"word_name":"中国","from":"CEDict","word_means":["China","Sino-"]}}}"
}
]
}
12. 我已开通词典、语音合成资源,但不想在结果中呈现,应该怎么办?
如需隐藏词典、语音合成信息,可在拼接请求参数时附加"&dict=1&tts=1",例如,如仅需隐藏tts字段,完整请求为:
http://api.fanyi.baidu.com/api/trans/vip/translate?q=apple&from=en&to=zh&appid=2015063000000001&salt=1435660288&sign=f89f9594663708c1605f3d736d01d2d4&tts=1
13. 我怎样开通“我的术语库”功能?
“我的术语库”功能面向个人及企业认证用户开放,您需首先前往“开发者信息”处完成身份认证,认证后即可在管理控制台看到“我的术语库”入口。目前自定义术语功能已开通“中文”和“英语”两个语种,更多语种需求,请发送邮件至translate_api@baidu.com告诉我们。
14. 为什么我添加了术语却看不出效果?
添加术语却看不出效果,可能出于以下几个原因:1. 添加或修改术语后,需要大约 10 分钟的生效时间,如果您是刚刚修改过术语,请您耐心等候生效;2. 在拼接接口 URL 时,需要在输入参数中增加“action=1”,详见输入参数小节;3. 翻译系统判断您定义的翻译与原翻译差异过大。由于神经网络翻译模型中,术语的定制化干预功能并非对翻译结果的生硬替换,而是类似于“调优”。如果您对术语的定义与原释义含义差距过大,会导致经计算过后的出现不可控的翻译结果。如您对术语干预效果不满意,请与translate_api@baidu.com联系。
- 实现代码
import requestsimport hashlibinwd=input("输入你要翻译的文字(默认英译中):")def is_all_chinese(strs): for _char in strs: if not '一' <= _char <= '龥': return False return True#print(is_all_chinese(inwd))#判断是否全部为中文is_chinese=is_all_chinese(inwd)if is_chinese==True: ffrom="zh" ttram="en" print("系统检测到你输入的全部为中文将自动翻译为英文!!")else: ffrom="en" ttram="zh"app_id="20201223001037485"#你的百度接口的app_idapp_password="K3456Mdf6H25wZIHUPw"#对应秘钥salt="1435660288"#随机数ysmd=app_id+inwd+salt+app_password#需要将百度翻译app_id翻译接口id和搜索关键字+随机数+秘钥进行MD5加密转换head = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36"}def md5value(key): input_name = hashlib.md5() input_name.update(key.encode("utf-8")) return (input_name.hexdigest()).lower()md5code=md5value(ysmd)url_statr="http://api.fanyi.baidu.com/api/trans/vip/translate?q="+inwd+"&from="+ffrom+"&to="+ttram+"&appid=20201223001037485&salt=1435660288&sign="+md5code+"&tts=1&Content-Type=application/x-www-form-urlencoded"reponse=requests.get(url_statr,headers=head).json()result=reponseprint("翻译结果:"+result['trans_result'][0]['dst'])
4、实现效果