Python爬虫进阶 | 某贝网加密分析

又来练手了,需求在这:算法

想一想有点激动:浏览器

分析请求

用浏览器抓一波登录包:编辑器

能够看到有 _abr_beibeitoken 两个加密参数。加密

咱们再找找发现beibeitoken是上一个请求返回的:spa

好像难度一下减小了一半。3d

定位加密位置

仍是老套路,搜就完事了:code

经过关键字就找到一个相关文件,先进去看看。cdn



先打上断点,从新登陆一下,成功进入断点说明位置十有八九是找到了,F11进去看看里面的加密逻辑是什么样的。blog

看上去逻辑还蛮简单的,就是先这样再那样而后拼接在一块儿返回回来,完事儿~token

分析加密

咱们一个个跟进去研究下:

u,d,a,e,s这几个加密均可以经过上图的方法追踪到对应的加密。

这里咱们主要研究fm的加密逻辑。

先看看f的加密逻辑:

var f = d.length ? (0,l["default"])(d.join("&")) : ""
复制代码

这里跟进去看看l["default"]是什么:

这里的e是初始化加密算法,咱们再跟进去看看:

到这里就能够看到比较有标志性的内容了,包括下面的m变量均可以参考这样追进去的操做,一直定位到加密定义的地方。

不少新手朋友是不太能追到上面这个位置,因此我有一个摸鱼的办法,把大体的代码复制到编辑器里,用编辑器自带的提示功能帮助咱们快速定位这个是什么加密。

取巧的方法(不适用于其余的加密)

上面的代码是否是长得有点像,为了验证这个想法我把js里关于加密的代码扣下来look look

不得不说好的编辑器可让你事半功倍,看到图中划线的地方这个参数的加密方法就一目了然了。

接下来继续分析m的加密方法

m = (0,c["default"])(g, "ytU7vwqIx2UXQNsi");
复制代码

有了上面的铺垫,咱们继续追进去分析一波:

 接下里就是编辑器表演的时候了

好了,到这里就破案了。

其实上面使用编辑器提示的方法只能算是一种取巧,在简单的加密里使用是能够起到一丢丢的做用,可是仍是建议你本身追到目标位置去发现加密算法究竟是什么。

相关文章
相关标签/搜索