刚学js,求助(已解决)
本帖最后由 fatlong 于 2024-1-17 09:23 编辑这是我写的一个有道的翻译
import requests
o = str(int(time.time()*1000))
def sign():
# e = 'asdjnjfenknafdfsdfsd'
# u = 'fanyideskweb'
# d = 'webfanyi'
q = f'client=fanyideskweb&mysticTime=str{o}&product=webfanyi&key=asdjnjfenknafdfsdfsd'
obj = hashlib.md5()
obj.update(q.encode('utf-8'))
a = obj.hexdigest()
return a
headers = {
"Origin": "https://fanyi.youdao.com",
"Referer": "https://fanyi.youdao.com/",
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36 Edg/118.0.2088.61",
'Host':'dict.youdao.com',
'Cookie':'OUTFOX_SEARCH_USER_ID_NCOO=1918452785.9332309; OUTFOX_SEARCH_USER_ID=714488211@171.221.146.167'
}
url = 'https://dict.youdao.com/webtranslate'
data = {
'i': '狗',
'from': 'auto',
'to': '',
'domain': 0,
'dictResult': 'true',
'keyid': 'webfanyi',
'sign': sign(),
'client': 'fanyideskweb',
'product': 'webfanyi',
'appVersion': '1.0.0',
'vendor': 'web',
'pointParam': 'client,mysticTime,product',
'mysticTime': str(o),
'keyfrom': 'fanyi.web',
'mid': 1,
'screen': 1,
'model': 1,
'network': 'wifi',
'abtest': 0,
'yduuid': 'abcdefg'
}
res = requests.post(url,data=data,headers=headers)
print(res.text))输出一直报错,想问一下,到底哪里有毛病
你抓的哪个地址 唯一之境 发表于 2024-1-16 19:23
你抓的哪个地址
请求的是这个:https://dict.youdao.com/webtranslate
网站是:https://fanyi.youdao.com/index.html#/这个 你没有import hashlib 这样正常返回,但是返回也是加密的,需要AES解密,自己探索试试吧
import requests,time,hashlib
o = int(time.time()*1000)
def sign():
# e = 'asdjnjfenknafdfsdfsd'
# u = 'fanyideskweb'
# d = 'webfanyi'
q = 'client=fanyideskweb&mysticTime='+ str(o) +'&product=webfanyi&key=fsdsogkndfokasodnaso'
a = hashlib.md5(q.encode()).hexdigest()
return a
headers = {
"Origin": "https://fanyi.youdao.com",
"Referer": "https://fanyi.youdao.com/",
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36 Edg/118.0.2088.61",
'Host':'dict.youdao.com',
'Cookie':'OUTFOX_SEARCH_USER_ID_NCOO=1918452785.9332309; OUTFOX_SEARCH_USER_ID=714488211@171.221.146.167'
}
url = 'https://dict.youdao.com/webtranslate'
data = {
'i': '狗',
'from': 'auto',
'to': '',
'domain': 0,
'dictResult': 'true',
'keyid': 'webfanyi',
'sign': sign(),
'client': 'fanyideskweb',
'product': 'webfanyi',
'appVersion': '1.0.0',
'vendor': 'web',
'pointParam': 'client,mysticTime,product',
'mysticTime': str(o),
'keyfrom': 'fanyi.web',
'mid': 1,
'screen': 1,
'model': 1,
'network': 'wifi',
'abtest': 0,
'yduuid': 'abcdefg'
}
res = requests.post(url,data=data,headers=headers)
print(res.text) 前几天才搞过这个,返回的还得解密一下 这不是js
是python吧 你用到的库都没有 import surepj 发表于 2024-1-16 20:15
这样正常返回,但是返回也是加密的,需要AES解密,自己探索试试吧
import reque ...
谢谢大佬,搞出来了,一直是key的值有问题 Pwaerm 发表于 2024-1-16 22:59
这不是js
是python吧
python写的一个逆向的,比较简单的
页:
[1]
2