Python 不到100行实现百度翻译
浏览 531 | 评论 6
狱杰1Jnver
2020年06月10日

闲来无事,用python写个百度翻译

思路
1.获取用户输入的欲翻译单词
2.拼接url
3.解析url内的json数据
4.打印结果内容

第一步 - 获取用户输入的欲翻译单词
使用简单的input()即可
定义一个变量

word = input('输入欲翻译单词')

第二步 - 拼接url
拼接url前先要知道url是什么格式
通过百度翻译的文档可以得知
请输入图片描述

公式即为

appid + q + salt + 秘钥

得知公式我们就定义几个变量
appid,salt,秘钥 、由于我们之前定义了q(word),所以这里就不再设定变量了
随机数可以用python内置的random
random食用方法

import random # 调用random
Random = random.randint(最小值,最大值)

然后生成待加密sign

sign公式为 :变量+APPID+需译单词+随机数+平台分配秘钥

生成之后使用md5加密
由于python3中删除了MD5模块,所以使用hashlib模块进行MD5的加密

生成MD5之后就可以拼接请求URL了

解析json

# 获取Json内容
    def get_record(url):
        resp = urllib.request.urlopen(url)
        ele_json = json.loads(resp.read())
        return ele_json

    if __name__ == '__main__':
        jsons = get_record(str(Api_Url))
        print_json = jsons['trans_result'][0]["dst"]
        print('"' + word + '"' + " => " + '"' + print_json + '"')
        # 输出语言信息
        print_json_ini_lang = jsons['from']
        # 源语言

然后打印即可
还可以使用while循环来重复过程

附赠源码一枚
https://cdn.supereq.cn/static/translate.py

本文作者:狱杰1Jnver
本文链接:http://yujienb.cn/vol.174
最后修改时间:2020-07-06 18:54:46
本站未注明转载的文章均为原创,并采用 CC BY-NC-SA 4.0 授权协议,转载请注明来源,谢谢!
评论
说点什么吧~
textsms
支持 Markdown 语法
email
link
评论列表
已有 6 条评论
2020-07-05 10:35
我寻思着,HTTPS://fanyi.baidu.com 不香了?
2020-07-05 10:36
@提莫酱 这就是用的百度翻译api吖
2020-07-03 15:36
来看望下老朋友
2020-07-05 10:36
@Mark 欢迎回来
神奇の赵贰
2020-06-12 01:20
py大佬
2020-06-12 08:12
@神奇の赵贰 屁,我就一萌新
arrow_back 上一篇
Python3生成md5
arrow_forward 下一篇
没有了