python实现调用百度API批量翻译单词

1. 首先需要申请百度翻译api(每个手机号可以注册一个)

参考:https://www.yuque.com/docs/share/c9d690e0-8f33-40af-97a4-42b0a550309f
注册网址:https://fanyi-api.baidu.com
看下图,先在网页右上方登录你的百度账号(这个账号和百度网盘的账号是一样的),登录进去后点击“管理控制台”。(如果你直接没有注册过比如百度网盘等账号,你就注册一个)
注册平台
然后选择“个人开发者”。填上你的姓名、邮箱和手机号。接收一下手机验证码后点“下一步”。
在这里插入图片描述
然后就会提示你注册成功了。注意下图成功画面你点击取消即可。如果点击了确定也没有关系,他会问你是否要实名认证。进入后是否实名认证都无所谓。实名认证的好处是可使用百度提供的收费项目。但是你不需要收费项目,所以不需要实名认证。
在这里插入图片描述
不管你是否进行了实名认证,你重新进入下面网址。重新点击进入“管理控制台”
注册网址:https://fanyi-api.baidu.com
在这里插入图片描述
这时看下图,你就能在最下面看到你的申请信息:app id和秘钥了。把它复制到其他地方先。比如复制到记事本或云笔记中都行。不复制也行。下次可以随时到这里看到的。申请还没有结束,需要点击“立即开通”。
在这里插入图片描述务必选择 “通用翻译”。
在这里插入图片描述
务必选择“开通标准版”在这里插入图片描述然后随便填写一个应用名称即可。填写完点“提交申请”,将会立即收到申请成功通知。
在这里插入图片描述
在这里插入图片描述
然后重新进入管理控制台。看到“此服务运转正常”,然后任何时候点击左侧的“开发者信息”都能看到你的APP ID和秘钥。
注册网址:https://fanyi-api.baidu.com
在这里插入图片描述
在这里插入图片描述

将你的app id和密钥填写到 知云文献翻译或xtranslator的设置中的指定位置,填写完关闭窗口,直接使用百度翻译引擎,翻译就会走你自己申请的百度翻译通路了。

务必知晓的注意事项:
1、填写时候复制粘贴冒号后面的部分,不要带有多余的字符或空格。
2、同一个api信息不要同时在两个或多个地方使用,否则可能会被百度封禁。如果有多个人或多个电脑同时使用,尽量各自注册百度翻译api账号。
3、百度翻译api只影响百度引擎,不影响其他翻译引擎。
4、最好把百度api信息复制一份到你的云笔记或某个地方,下次重新安装软件可以更容易找到你的api信息。

2. 使用百度翻译API实现批量翻译单词
拥有的百度的API-ID和密码之后就可以调用百度翻译API进行批量翻译了

def baidu_translate(en_str):
    api_url = 'http://api.fanyi.baidu.com/api/trans/vip/translate'
    # 百度翻译appid
    appid = ''
    # api的密码
    secretKey = ''
    salt = random.randint(32768, 65536)
    sign = get_md5(appid + en_str + str(salt) + secretKey)
    # 可以设置翻译的语言
    api_data = {
        'q': en_str,
        'from': 'en',
        'to': 'zh',
        'appid': appid,
        'salt': salt,
        'sign': sign
    }
    req_get = requests.get(api_url, api_data)
    # 结果的位置可能不同
    result = req_get.json()['trans_result'][0]['dst']
    return result
  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用百度翻译API,您需要先在百度翻译开放平台注册并创建一个应用程序,然后获取应用程序的APP ID和密钥。 接着,在Python调用百度翻译API接口需要使用requests库,以下是一个示例代码: ```python import requests import json url = 'https://fanyi.baidu.com/v2transapi' app_id = 'your app id' secret_key = 'your secret key' def translate(text, from_lang, to_lang): data = { 'from': from_lang, 'to': to_lang, 'query': text, 'transtype': 'translang', 'simple_means_flag': '3', 'sign': '', 'token': '', } sign = app_id + text + str(1435660288) + secret_key sign = hashlib.md5(sign.encode()).hexdigest() data['sign'] = sign data['token'] = 'e8c37d1a59fdefa0e7e9e012c2261f48' headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36', 'Referer': 'https://fanyi.baidu.com/', 'Origin': 'https://fanyi.baidu.com', 'Host': 'fanyi.baidu.com', 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8', 'Accept-Encoding': 'gzip, deflate, br', 'Accept-Language': 'zh-CN,zh;q=0.8,en;q=0.6', 'Cookie': 'BAIDUID=your Baidu ID', } response = requests.post(url, headers=headers, data=data) content = json.loads(response.text) return content['trans_result']['data'][0]['dst'] ``` 在上面的代码中,您需要将“your app id”和“your secret key”替换为您自己的百度翻译应用程序的APP ID和密钥。还需要将“your Baidu ID”替换为您自己的百度ID。 然后,您可以调用“translate”函数并传递要翻译的文本,源语言和目标语言作为参数。例如: ```python text = 'Hello, World!' from_lang = 'en' to_lang = 'zh' translation = translate(text, from_lang, to_lang) print(translation) ``` 这将输出“你好,世界!”(Hello, World!的中文翻译)。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值