案例:
- 手工输入字符串
- 随机生成动态数字(字符串)
- 拼接字符串,并且进行MD5加密
- 通过API请求
- 对结果进行json格式化
- 输出翻译结果(只要译文)
import requests
#导入随机数模块
import random
#在python3中使用hashlib模块进行MD5操作
import hashlib
#定义编码格式
encoding = “utf-8”
#定义一个MD5加密函数
def getMD5(content):
m = hashlib.md5()
m.update(content.encode(encoding))
return m.hexdigest()
#定义一个函数:
def test_baidu_input():
# 定义接口处的URL
tar_url = "http://api.fanyi.baidu.com/api/trans/vip/translate"
# 定义被翻译的字符串
tar_q = input("请输入要翻译的内容:")
fr = "auto"
# 定义appid
app_id = "20200211000382774"
# 定义随机数(直接转换为字符串)
sa_lt = str(random.randint(1000,9999))
# 定义秘钥
mk = "b1imCNk_EdeIHM0zX2bD"
# 定义加密前的sign
before_sign = app_id + tar_q + sa_lt+ mk
tar_sign = getMD5(before_sign)
# 构造参数
canshu = {
"q" : tar_q,
"from":fr,
"to":"zh",
"appid":"20200211555382774",
"salt":sa_lt,
"sign":tar_sign
}
res = requests.get(url=tar_url,params=canshu)
print(res.status_code)
print(canshu)
result = res.json()
print(result)
# 提取响应结果,并输出译文
tar_result = result['trans_result'][0]['dst']
print("pear的输出译文是:" ,tar_result)
#调用函数
test_baidu_input()
响应并打印结果: