欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

简单js反爬处理思路 part3

程序员文章站 2022-07-14 11:09:31
...

简单js反爬处理思路 part3

这次要解决的是同程的elepath这个参数,相比于携程的eleven 这个参数是相对简单多了,好了 开始吧。

1.解决调试问题

首先 ,打开这个页面,打开调试面板,你会发现陷入了无限debugger

简单js反爬处理思路 part3
解决这种问题的一般思路应该是右键nvever pause here,但是这里往函数栈上面找,会发现有定时器的存在,定时器让debugger一直eval执行,所以我们找到设置定时器的函数,然后删除那段代码,保存,再清楚定时器即可。如图
简单js反爬处理思路 part3
简单js反爬处理思路 part3

上面有一个坑,就是你在删除定时器的时候,不要把代码格式化,格式化后的代码是不能修改代码的。再就是修改后要保存,保存后在console把定时器清除,清除定时器用这段

for(var i = 0;i<1000000;i++){
	clearInterval(i)
}

2.找到elepath怎么加密的

点击页面上的价格,注意不要刷新页面,不然修改的js和定时器会重新载入,点击价格后,在network面板找到包含elepath参数的请求,查看他调用了哪些js
简单js反爬处理思路 part3
点击进去,搜索elepath
简单js反爬处理思路 part3
打上断点,再点击价格进入断点
简单js反爬处理思路 part3
简单js反爬处理思路 part3

可以看到,f 和 j 分别是页面元素的xpath和页面的url参数(加了些别的)
encode的逻辑就自己看一下吧

不知道对你有没有帮助呢,有帮助的话点个赞呗 ( ̄▽ ̄)/