Python爬取百度翻译-可以选择语言

目录

抓包

代码

效果


使用Python爬取百度翻译,可更换语种如:日语,英语,这样就可以完成一个简易的翻译器!建议收藏!本文需要用到requests库和一些爬虫知识!可以参考方法改造代码!


Hi ! 又见面了!我是PYmili。今天给大家带来的....,我好像说过了!嘿嘿!那么就开始第一步吧!

抓包

打开百度翻译可以看见如下界面。

可以看见两个输入框,和两个选择框。那么就基本知道走动方向了!我们随便选择语种。输入内容,查看网页链接情况。

 

 可以看见网页链接发生了变化!那我们按 F12 键查看网络,找到一个叫 v2transapi?from=zh&to=jp 的xhr文件。

 可以看见一个API:https://fanyi.baidu.com/v2transapi 后面跟着请求?from=zh 这里就是语种了。


代码

from = 语种。zh就是中文了!&to=jp 这里就是一样的jp就是要翻译至的语种 jp日语。那么,代码就可以这样写了!

​
​
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:  # js文件
    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)
print(r)
#print(r.json())
json = r.json()  # 获取json文件内容
print(json)
data = json['trans_result']
for i in json['trans_result']:
    datas = json['trans_result'][i]
    print(datas[0]['dst'])
    break

​

​

cookie值可以在看见的,需要填自己的cookie值。看图

填你自己的!填我的没用啊! user-agent值也是如此,网页往下滑就行了。


我们慢慢来解释一下,首先!我们要请求这个api https://fanyi.baidu.com/v2transapi ​​​​​这样我们再向api传入内容:

​
data = {
    "from": "zh",
    "to": "jp",
    "query": msg,
    'transtype': 'translang',
    "simple_means_flag": "3",
    "sign":sign,
    "token":"",
    "domain":"common"
    }

​

from值就是要翻译的语种,to就是翻译至的语种,query就是内容,还有两个重要的内容。sign这个是js生成的中文钥匙不是固定的,那我们就得自己生成。我这里用了群里一位老哥分享的js包可以加QQ群:706128290在群文件中,自行拿取。还有就是token值是网页固定的。看就知道了

之前的文件下拉到最后。这里进行涂改,大家可以输入自己的值。怎么样是不是很简单?

在使用前!要安装一个库!PyExecJs 一个用来解析js的库。pip直接安装就行了!

pip install PyExecJs

效果

接下来我们看效果:

怎么样? 是不是很通俗易懂?你问我怎么更换语种?设置to就行了

语种名单

中文  zh  英语  en 
日语  jp  韩语  kor 
西班牙语  spa  法语  fra 
泰语  th  阿拉伯语  ara 
俄罗斯语  ru  葡萄牙语  pt 
粤语  yue  文言文  wyw 
白话文  zh  自动检测  auto 

学会了吗?学会就来个三联吧!谢谢啦!有问题可以加群:706128290 交流。

我是PYmili,下次再见!

 

  • 10
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Pymili

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值