网易云
分析目标网站
1)首先确定要爬取的评论是在网页源代码中还是在其他包中。


这里看到“查看网页源代码”、“查看框架的源代码”,说明当前网站是由两个html文件嵌套出来的,两套html代码中都没有我们想要的数据,那么开始对包进行分析。
2)选择XHR,发送请求。
挨个找下去发现这个包里面有comments,打开发现确实是我们想要的评论。

观察这个包,如果没登陆csrf_token后面是没有值的。

这个请求包含两个参数,但是经过了加密,服务器会根据encsetkey还原出params的真实值,那么我们该如何模拟这个过程。

代码设计
- 找到未加密的参数
- 想办法把参数进行加密(必须参考网易云的逻辑),params,encSecKey
- 请求到网易,拿到评论信息
1)Request call stack是:发送请求到get?...经过了哪些js脚本的执行(从下往上执行)。

2)点一下最后一个过程,其中的乱码是将变量替换的结果,点左下角的{}

3)发现这个send,这一定是发送请求,设置一个断点,刷新浏览器。

4)在断点之前的变量都会在Local里面体现。

5)找到request,但是里面的url不是我们要找的get?...,所以继续走,直到看到要找的连接。


6)分析下图,当程序走到1552行时完成了数据加密,那么在e7d参数传入这个函数时是怎样的?我们需要看data参数在进入这个函数时有没有被加密。

7)往回找,点击call Stack,里面与我们之前看的Initiator是一样的。

8)点击b7g...打开d7e后发现数据还是加密的,那么继续往前推。
浙公网安备 33010602011771号