网页抓取解密(Python爬虫JS解密,学会直接破解80%的网站!! )
优采云 发布时间: 2021-11-29 11:26网页抓取解密(Python爬虫JS解密,学会直接破解80%的网站!!
)
Python爬虫JS解密详解,学会直接破解网站的80%!!!
29个爬虫项目宝典教程,你值得拥有!
前言
==Glidedsky==这个关卡==JS解密==和之前看到的不一样,希望大家好好看看学习!
==温馨提示==:保护头发!
1、网页视图
2、JS解密过程(仔细看)
既然是JS加密的,数据肯定不是静态的,如下
直接请求页面,或者把检索到的html代码粘贴到html文件中打开,没有数字
打开控制台查看XHR
这里有问题。之前查的时候可以查看数据,但是不知道为什么又看不到数据了。知道的请在评论区告诉我,谢谢。
网上说的== 网页可以感应到用户打开了控制台==,不知道,不敢问,有这么饿的操作
如果有不明白的朋友,请参考我的JS解密文章 Python爬虫JS解密详解,写的很详细,多做这东西会有经验。
什么都不说,看吧
向下滚动可以看到请求有3个参数
按Ctrl+Shift+f搜索,输入==sign==,可以看到有6个匹配项
有兴趣的朋友可以点进去再搜索==sign==,都是和下图一样的匹配====牛头不对马嘴==
根据我之前的JS解密经验,应该不是直接匹配,然后做一个函数来加密o(╥﹏╥)o
这个我都看到了,直接放弃不是我的性格。我会继续耐心地学习和学习。. . .
然后找到了一个新的方法,现在教大家——就是打XHR断点,如下
只需复制部分网址,无需全部复制
==现在进入最关键的一步--使用python代码获取以上数据==
==获取t值==
==获取符号值==
Secure Hash Algorithm主要适用于数字签名标准DSS中定义的数字签名算法DSA。SHA1 比 MD5 更安全。对于长度小于 2^64 位的消息,SHA1 将生成 160 位的消息摘要。
别慌,python提供了hashlib库,厉害了!
==成功了,老铁们可以过来点赞!(*^▽^*)==
==拼接URL请求,注意:返回数据为json格式==
完美的
3、解密答案(完整代码)
import requests
import hashlib
import time
import math
headers = {
"user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.102 Safari/537.36",
#注意Cookie自己填哦
"Cookie": ""
}
sum = 0
def get(response):
global sum
for i in response['items']:
sum += int(i)
if __name__ == '__main__':
#1000个页面
for i in range(1000):
#获取t值
t = math.floor(time.time())
#获取sign值
sha1 = hashlib.sha1()
data = 'Xr0Z-javascript-obfuscation-1' + str(t)
sha1.update(data.encode('utf-8'))
sign = sha1.hexdigest()
print("第"+str(i+1)+"页")
#拼接url
url = "http://glidedsky.com/api/level/web/crawler-javascript-obfuscation-1/items?page="+str(i+1)+"&t="+str(t)+"&sign="+str(sign)
response = requests.get(url=url,headers=headers).json()
get(response)
#打印最终数字
print(sum)
复制代码
成功突破,解密成功!!!
==注意填写Cookie,我提供的代码没有填写Cookie值==
博主会持续更新。有兴趣的朋友可以==喜欢==,==关注==和==采集==接下来,你们的支持就是我创作的最大动力!
Java学习从入门到大神学习目录索引
博主开源Python爬虫教程目录索引(宝教程,你值得拥有!)