动机:大部分的音乐需要VIP才可以听,并且下载也要VIP。
所以,我想找一个不用VIP就可以听歌的音乐站,这不,就让我找到了?
最近见到什么网站都想爬一爬,所以想先拿这个网站练练手
由于我是一边分析一边写的,所以文章会长一点,新手可以慢慢看,代码写完会放在下面的,不要着急~
首先这个网站是长这样的:
[i]
然后我随便点击了一首歌曲,它的页面是这样的,没有在新标签页打开,并且刷新了,如图
[i]
所以我猜这个用的不是Ajax接口,而是由服务器渲染再返回客户端的
点击f12,刷新,我猜的果然没错
[i]
这种的话我比较喜欢用正则表达式,到时候不行再用xpath,因为正则表达式比较简单。(我的意思是我个人比较喜欢,并不是说xpath不好)
好的,我们这个主要是下载歌曲,并不是获取它的歌名、歌手等,咱们主要的目的不是自动下载吗?
[i]
这里的下载并不是直接下载了,而是访问歌曲的主页,那我们就去主页看看
这里的歌词和歌曲是分开的(像极了B站的音视频分开)
[i]
这边审查元素发现下载链接已经很明显了
[i]
我们尝试直接访问链接,好家伙,这还不是真正的下载,而是在新标签页打开歌曲,没事,这个requests可以解决的
[i]
等一下,突然发现这个是酷我音乐的外链。。。
没事没事,反正外链在手,可以下载就行
开始编写代码啦!