先找到 POST 请求参数
找到 POST 请求后的参数 进行搜索 找到相应的 js 代码
import time
import requests
import hashlib
def test():
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36',
'Referer': 'http://fanyi.youdao.com/',
'Cookie': 'OUTFOX_SEARCH_USER_ID_NCOO=1331552698.1670616; OUTFOX_SEARCH_USER_ID="1328614038@10.168.11.12"; P_INFO=gwxog; JSESSIONID=aaa_PXBuGBbSz5qLg8E0w; ___rl__test__cookies=1568187353822'
}
while True:
word = input('请输入:')
if word == 'q!':
print('退出')
break
data = {
'i': None,
'from': 'AUTO',
'to': 'AUTO',
'smartresult': 'dict',
'client': 'fanyideskweb',
'salt': None,
'sign': None,
'ts': None,
'bv': None,
'doctype': 'json',
'version': '2.1',
'keyfrom': 'fanyi.web',
'action': 'FY_BY_REALTlME'
}
ts = str(int(time.time()))[:13]
salt = str(int(time.time()))[:14]
sig = 'fanyideskweb' + word + salt + 'n%A-rKaT5fb[Gy?;N5@Tj'
sign = hashlib.md5(sig.encode('utf-8')).hexdigest()
bv1 = headers.get('User-Agent')
bv = hashlib.md5(bv1.encode('utf-8')).hexdigest()
data['i'] = word
data['salt'] = salt
data['sign'] = sign
data['ts'] = ts
data['bv'] = bv
url = 'http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule'
res = requests.post(url, headers=headers, data=data)
print(res.text)
test()