Python 不到100行实现百度翻译

由 admin 发布

什么?!Python写一个百度翻译?!

闲来无事,用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循环来重复过程


暂无评论

发表评论