|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
代码如下:
- # https://fanyi.baidu.com/v2transapi?from=zh&to=jp 在上面的url上也体现了语言
- import urllib.request
- import urllib.parse
- import json
- import execjs#js调用语句
- url = 'https://fanyi.baidu.com/v2transapi?from=zh&to=jp'
- inputStr = '我是你爸爸'
- #sign失败 原因是 百度鸡贼 弄一个算法 只有匹配才能
- with open('baidutrans.js','r',encoding = 'utf-8') as f:
- jsCode = execjs.compile(f.read())
- sign = jsCode.call('e',inputStr)
- ####最难的是如何找到对应参数的js代码截断
- post = {'from':'zh','to': 'jp','query':inputStr,'transtype':' translang','simple_means_flag':'3',
- 'sign':sign,'token': 'bd59af3720c7bc03b65bf7e5d4e05adb'}
- postRealData = urllib.parse.urlencode(post).encode('utf-8')#将post的数据变成可传数据
- req = urllib.request.Request(url,data = postRealData)
- req.add_header('user-agent','Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36')
- response = urllib.request.urlopen(req)
- print('头文件:\n' + str(response.getheaders()))
- print('状态码:' + str(response.status))
- print('返回的内容:\n' + response.read().decode('utf-8'))#
- #responseData = response.read().decode('utf-8')
复制代码 |
|