download music.163的评论

本文介绍了如何获取163音乐歌曲评论的过程,包括params和encSecKey的加密机制。通过分析网络请求,发现它们是经过特定函数处理的加密字符串。params和encSecKey的产生涉及window.asrsea函数以及固定字符串bsy0x的拼接。通过理解这些参数的生成方式,可以动态修改第一个参数以下载不同页面的评论。
摘要由CSDN通过智能技术生成

1.任务介绍

获取每首歌下面的所有评论,通过抓包工具,可以看到该请求返回的数据中,包含了一个页面(这首歌一共有261页评论)的20条评论
在这里插入图片描述
因此,拿到每个页面的url就能得到所有评论数据。
在这里插入图片描述
对headers进行查看,发现这是一个post请求,form data为params和encSecKey(下图为第一页的params和encSecKey):
在这里插入图片描述
从上图可以看出,params和encSecKey都是经过加密的长字符串。
对评论的第二页进行分析,发现request url和第一页一样,只是params和encSecKey不一样:
在这里插入图片描述
返回的数据同样也包含了20条评论:
在这里插入图片描述

因此,通过不同的params和encSecKey就可以获取歌曲的所有评论。任务的关键就在于加密的params和encSecKey是如何产生的。

2.params和encSecKey的产生过程

点击第一个页面所对应的initiator:
在这里插入图片描述
initiator标记请求是由哪个对象或进程发起的,从下到上依次排列,因此最上方的就是最后发出请求的对象。点击最上方的那个对象:
在这里插入图片描述
这样看起来不方便,点击左下角这个符号,format一下:
在这里插入图片描述
在该页面中使用Ctrl+F寻找“encSecKey”:(为什么不查找“params”?因为params出现的次数较多)
在这里插入图片描述
可以看到params和encSecKey来源于bMq3x,而bMq3x又来源于window.asrsea这个函数。因此,我们需要知道window.asrsea这个函数是干什么的。在页面中查找“window.asrsea”:
在这里插入图片描述
即d函数就是window.asrsea函数:(python版本在后面代码中有)

!function() {
   
    function a(a) {
   
        var d, e, b = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789", c = "";
        for (d = 0; a > d; d += 1)
            e = Math.random() * b.length,
            e = Math.floor(e),
            c += b.charAt(e);
        return c
    }
    function b(a, b) {
   
        var c = CryptoJS.enc.Utf8.parse(b)
          , d = CryptoJS.enc.Utf8.parse("0102030405060708")
          , e = CryptoJS.enc.Utf8.parse(a)
          , f = CryptoJS.AES.encrypt(e, c, {
   
            iv: d,
            mode: CryptoJS.mode.CBC
        });
        return f.toString()
    }
    function c(a, b, c) {
   
        var d, e;
        return setMaxDigits(131),
        d = new RSAKeyPair(b,"",c),
        e = encryptedString(d, a)
    }
    function d(d, e, f, g) {
   
        var
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值