python3调用百度翻译api接口实现全过程 在2021-06-29 12:29 进行了更新,本站所有内容仅供大家仅供学习交流使用,请勿转载传播,严禁用于商业用途,请于24小时内删除,请支持正版!!!
现在很都平台的翻译api接口都开始收费了,比如谷歌、微软、yandex等等,注册非常麻烦,而且要钱,目前就百度还剩下一个最基础的翻译api不需要钱,今天我要和大家分享的是怎样使用python3调用百度翻译接口,虽然百度官方有现成的演示,但在实际的应用过程中还是存在一些问题的,网上的各种资料众说纷纭,纷繁复杂,一不小心就给你带沟里去了。
使用Python调用百度翻译Api的目的主要是为了翻译汉化软件,或者汉化wordpress模板、wordpress插件或者汉化其他的软件。
实现步骤:
第一步,咱们当时是要申请百度翻译的API了,申请地址是:“http://api.fanyi.baidu.com”。请自己注册账户并从这个地址登录进去。
第二步,选择“通用api”,点进去:
第三步,点“立即使用”
第四步,点“管理控制台”==》“开发者信息”,然后你看到的“申请者信息”下面的“APP ID”和“密钥”,复制并保存,一会咱们会用得到。
第五步,自己查看百度翻译api开发文档,并着手开始编写代码。
百度通用翻译api文档:http://api.fanyi.baidu.com/product/113 百度通用翻译api常见问题:http://api.fanyi.baidu.com/product/114 百度通用翻译api产品介绍:http://api.fanyi.baidu.com/product/111
我使用的是python3.8来编写的英文翻译程序,中间遇到的坑和过程我就不赘述了,下面直接放出代码,供大家参考:
# /usr/bin/env python # coding=utf8 """ @作者: dobunkan @邮箱: dobunkan@qq.com @开发工具: PyCharm @标题 : @文件名: fy.py @创建时间: 2020/12/8 10:12 """ import json import http.client # 修改引用的模块 import hashlib # 修改引用的模块 from urllib import parse import random def fanyi(english): appid = '20170117000036107' # appid secretKey = 'YS6f4JP_dxMNM44YmhMa' # 密钥 httpClient = None myurl = '/api/trans/vip/translate' q = english fromLang = 'en' toLang = 'zh' salt = random.randint(32768, 65536) sign = appid + q + str(salt) + secretKey m1 = hashlib.md5() m1.update(sign.encode("utf-8")) sign = m1.hexdigest() myurl = myurl + '?appid=' + appid + '&q=' + \ parse.quote(q) + '&from=' + fromLang + '&to=' + toLang + '&salt=' + str(salt) + '&sign=' + sign try: httpClient = http.client.HTTPConnection('api.fanyi.baidu.com') httpClient.request('GET', myurl) response = httpClient.getresponse() # 转码 html = response.read().decode('utf-8') html = json.loads(html) dst = html["trans_result"][0]["dst"] print(dst) except Exception as e: print(e) finally: if httpClient: httpClient.close() if __name__ == '__main__': fanyi("Rank Math free version is required to run Rank Math Pro. Both plugins are now disabled.")
下面我在将这个程序翻译英文的结果贴到下面,给大家看看效果:
X:\www\rfm_flask\venv\Scripts\python.exe H:/www/rfm_flask/fy.py Rank Math free版本需要运行Rank Math Pro。两个插件现在都被禁用了。 Process finished with exit code 0
备注:网上很多代码都是东拼西凑,标题写的是python3,其实使用的是python2.x,这会给新手带来很多困扰。
下载python3调用百度翻译api接口实例(主要包含了汉化json、PHP脚本、po文件):
评论前必须登录!
立即登录 注册