admin管理员组

文章数量:1633104

在python实现千千音乐mp3下载后小伙伴使用发现很多音乐在千千音乐都搜不到,所以今天春江暮客就拓展了一下酷狗音乐的下载,有源码。

同样的配方,首先在酷狗官网上直接搜索歌曲,然后打开谷歌浏览器的网络监视器,再次搜索同样的关键字就可以发现接口信息(注:此处最好再次搜索的时候查看网络,可以剔除很多多余的信息)。

1.分析搜索接口信息

只有4条网络请求,可以很方便的知道是第一条请求是真正的返回了歌曲信息,因此构造此条请求即可。

请求详细信息,在看了千千音乐的文章后,相信大家也熟悉了,callback是前面加上13位的timestamp时间戳,_为13位的timestamp时间戳。

2.分析播放接口信息

到这里已经知道了搜索的详细请求以及结果,接下来看音乐下载地址,点击第一首歌曲播放

只需要使用json解析结果然后获取信息,json_page_source[“data”][“list”][0][“AlbumID”]和json_page_source[“data”][“list”][0][“FileHash”]即可获取下载所需信息。

直接查看网络,刷新,查看网络连接,从茫茫多的请求中找到真正的获取mp3地址的请求。

同样是json,同样的配方。play_url为mp3地址,lyc歌词信息直接以文本格式返回,lyrics。json_page_source[“data”][“play_url”]得到mp3地址,json_page_source[“data”][“lyrics”]获取lrc歌词。

3.python实现搜索下载

接口分析清楚了,就可以直接上python了,这里酷狗对爬虫限制比较严格,不知道为什么requests获取不到信息,因此借助万能的selenium实现调用浏览器获取源码,然后mp3再用requests下载。上代码

#!env python

# -*- coding: utf-8 -*-

import requests

from selenium import webdriver

from selenium.webdrivermon.keys import Keys

import re,json,t

本文标签: 酷狗音乐Python