酷狗音乐分析(1)
气死我了,博客写到一半电脑蓝屏了!!!还好CSDN保存了草稿…Windows的稳定性真是令人发指。
酷狗音乐1
1.推荐歌单
地址:https://www.kugou.com
XPath:
内容 | 表达式 |
---|---|
名称 | //*[@id=“secoundContent”]/div[1]/div[2]/div/div[2]/p[1]/text() |
封面 | //*[@id=“secoundContent”]/div[1]/div[2]/div/img/@_src |
歌单id | //*[@id=“secoundContent”]/div[1]/div[2]/div/div[1]/div/@data-id |
创建人 | //*[@id=“secoundContent”]/div[1]/div[2]/div/div[2]/p[2]/text() |
2.歌单详情
地址:https://www.kugou.com/yy/special/single/ + 歌单id + .html
正则:data=(\[.*?]),\n
3.搜索音乐
终于碰到加密啦!
先上一张图:
于是发现,接口地址在https://complexsearch.kugou.com/v2/search/song
,参数共19个:
callback: callback123
keyword: 牧马城市
page: 1
pagesize: 30
bitrate: 0
isfuzzy: 0
tag: em
inputtype: 0
platform: WebFilter
userid: 0
clientver: 2000
iscorrection: 1
privilege_filter: 0
srcappid: 2919
clienttime: 1627368224422
mid: 1627368224422
uuid: 1627368224422
dfid: -
signature: ABEE328123BEDE8FDDCA2DF5E4F91717
这些参数中,不难发现signature是加密了的,而且如果去掉这个参数,会报错“err signature”,所以我们来试着破解一下。
搜一搜,发现signature是在inf_public-min.js
第274行生成的,长这样:
h.signature = faultylabs.MD5(o.join(""))
打上断点调试,输出o的值看看:
[
"NVPh5oo715z5DIWAeQlhMDsWXXQV4hwt",
"bitrate=0",
"callback=callback123",
"clienttime=1627369757200",
"clientver=2000",
"dfid=-",
"inputtype=0",
"iscorrection=1",
"isfuzzy=0",
"keyword=牧马城市",
"mid=1627369757200",
"page=1",
"pagesize=30",
"platform=WebFilter",
"privilege_filter=0",
"srcappid=2919",
"tag=em",
"userid=0",
"uuid=1627369757200",
"NVPh5oo715z5DIWAeQlhMDsWXXQV4hwt"
]
哈哈,原来signature的值就是列表的元素拼接后用md5加密而已,美化一下便大功告成!
总结:
地址:https://complexsearch.kugou.com/v2/search/song
参数:keyword=搜索内容,page=页数,pagesize=个数,platform=WebFilter,userid=0,clientver=2000,srcappid=2919,mid=13位时间戳,dfid=-,signature=下表元素拼接后md5大写32位加密
[
"NVPh5oo715z5DIWAeQlhMDsWXXQV4hwt",
"clientver=2000",
"dfid=-",
"keyword=搜索内容",
"mid=13位时间戳",
"page=页数",
"pagesize=个数",
"platform=WebFilter",
"srcappid=2919",
"userid=0",
"NVPh5oo715z5DIWAeQlhMDsWXXQV4hwt"
]
写累了,明天分析歌曲详情~~~
没有搜索歌手的功能 ↩︎
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架