【python】5行代码实现百度翻译api接口调用

您所在的位置:网站首页 jerry百度翻译 【python】5行代码实现百度翻译api接口调用

【python】5行代码实现百度翻译api接口调用

2024-07-11 00:02| 来源: 网络整理| 查看: 265

文章目录 1. 目标站点2. 完整代码3. 测试样例3.1. 测试样例Ⅰ(汉译英)3.2. 测试样例Ⅱ(英译汉) 4. 调用文档4.1. 接口地址4.2. 请求方法4.3. 必要参数4.4. 请求示例4.5. 成功响应 5. 接口分析6. 相关推荐

1. 目标站点

https://fanyi.baidu.com/

2. 完整代码 import requests url = 'https://fanyi.baidu.com/sug' data = {'kw': 'hello'} # 你只需要改kw对应的值 res = requests.post(url, data=data).json() print(res['data'][0]['v']) 3. 测试样例 3.1. 测试样例Ⅰ(汉译英)

样例输入:data = {'kw': '你好'}

import requests url = 'https://fanyi.baidu.com/sug' data = {'kw': '你好'} res = requests.post(url, data=data).json() print(res['data'][0]['v'])

样例输出:hello; hi; How do you do!

3.2. 测试样例Ⅱ(英译汉)

样例输入:data = {'kw': 'hello'}

import requests url = 'https://fanyi.baidu.com/sug' data = {'kw': 'hello'} res = requests.post(url, data=data).json() print(res['data'][0]['v'])

样例输出:int. 打招呼; 哈喽,喂; 你好,您好; 表示问候 n. “喂”的招呼声或问候声 vi. 喊“喂

4. 调用文档 4.1. 接口地址

https://fanyi.baidu.com/sug

4.2. 请求方法

post

4.3. 必要参数 参数类型描述kwstr待翻译的字符串 4.4. 请求示例 import json, requests url = 'https://fanyi.baidu.com/sug' data = {'kw': 'hello'} res = requests.post(url, data=data).json() print(json.dumps(res, indent=2, ensure_ascii=False)) 4.5. 成功响应 { "errno": 0, "data": [ { "k": "hello", "v": "int. 打招呼; 哈喽,喂; 你好,您好; 表示问候 n. “喂”的招呼声或问候声 vi. 喊“喂" }, { "k": "hellos", "v": "n. 喂( hello的名词复数 )" }, { "k": "hellow", "v": "(通常的招呼语)嗨, (打电话用)喂!, (英)(表示惊讶)哎哟" }, { "k": "hello girl", "v": "女话务员; 女电话接线员" }, { "k": "hello kitty", "v": "n. 卡通世界中; 有这样一只小猫; 没有嘴巴; 脸蛋圆圆的" } ] } 5. 接口分析

1、进入百度翻译页面,F12打开开发者调试工具,选择Network-XHR: 在这里插入图片描述 2、我们马上就发现了一个api接口:

https://fanyi.baidu.com/v2transapi

3、然后我们看一下它的请求参数:

from: en to: zh query: hello transtype: realtime simple_means_flag: 3 sign: 54706.276099 token: f3742648b89565dc59d86603c03aaae8 domain: common

4、使用python在后端发送请求:

import json, requests url = 'https://fanyi.baidu.com/v2transapi' data = { 'from': 'en', 'to': 'zh', 'query': 'hello', 'simple_means_flag': '3', 'sign': '54706.276099', 'token': 'f3742648b89565dc59d86603c03aaae8', 'domain': 'common' } res = requests.post(url, data=data).json() print(json.dumps(res, indent=2))

5、响应结果:

{ "errno": 997, "errmsg": "\u672a\u77e5\u9519\u8bef", "query": "hello", "from": "en", "to": "zh", "error": 997 }

6、额……报错(⊙﹏⊙)。sign是签名,token是令牌,这都是百度官方内部定义的,我们很难知道如何解析,这个接口看来不能用了。

1、这里又看到了一个api接口:

https://fanyi.baidu.com/sug

2、这个是根据输入实时翻译的接口,所以我们只需要看最后一个sug请求: 在这里插入图片描述 3、sug接口的请求参数是:

kw: hello

4、sug接口的响应结果是: 在这里插入图片描述 5、很显然,res['data'][0]['v']中的字符串就是hello翻译后的数据:

int. 打招呼; 哈喽,喂; 你好,您好; 表示问候 n. “喂”的招呼声或问候声 vi. 喊“喂

6、用python在后端发送请求,请求成功o( ̄▽ ̄)ブ:

import requests url = 'https://fanyi.baidu.com/sug' data = {'kw': 'hello'} # 你只需要改kw对应的值 res = requests.post(url, data=data).json() print(res['data'][0]['v']) # 输出: int. 打招呼; 哈喽,喂; 你好,您好; 表示问候 n. “喂”的招呼声或问候声 vi. 喊“喂 6. 相关推荐

【python】答题卡识别模型api接口调用



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3