python爬虫 百度翻译
时间: 2023-09-23 19:06:32 浏览: 121
使用Python进行百度翻译的爬虫可以通过以下步骤完成:
1. 引用 requests 库和 execjs 库。
2. 通过 requests.post 方法发送 POST 请求,将要翻译的内容、要翻译的语种和目标语种作为参数传递给请求。
3. 在请求头中设置 User-Agent 和 Cookie。
4. 使用 execjs 调用 sign.js 文件中的 get 方法生成 sign 值。
5. 将生成的 sign 值和其他参数一起作为请求的 payload 发送。
6. 解析返回的 JSON 数据,获取翻译结果。
下面是一个示例代码,具体的 Cookie、token 值等需要自行填写:
```python
import requests
import execjs
msg = input("输入你要查询的句子或词:")
url = "https://fanyi.baidu.com/v2transapi"
headers = {
'User-Agent': '#这里填你自己的',
'Cookie': '#这里写你的Cookie',
}
with open('sign.js', 'r', encoding='utf-8') as f:
sign = execjs.compile(f.read()).call("get", msg)
data = {
"from": "zh", # 要翻译的语种
"to": "jp", # 翻译成的语种
"query": msg, # 要翻译的内容
'transtype': 'translang',
"simple_means_flag": "3",
"sign": sign,
"token": "#写你自己的token值",
"domain": "common"
}
r = requests.post(url=url, headers=headers, data=data)
json = r.json() # 获取json文件内容
data = json['trans_result']
for i in json['trans_result']:
datas = json['trans_result'][i]
print(datas<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [Python爬取百度翻译-可以选择语言](https://blog.csdn.net/qq_53280175/article/details/121042585)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
阅读全文