网易云

分析目标网站

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后发现数据还是加密的,那么继续往前推。

posted @ 2022-10-23 23:07  钱有学  阅读(8)  评论(0)    收藏  举报