一.题记
偶然的情况下了解到了关于API的一些妙用,利用所学知识使用目前网上公开的API来获取需要付费才能下载的网易云音乐。
二.API的粗浅看法
目前感觉就是设置了网页请求头中params的响应参数之后,访问API接口,对方就会返回一系列json数据,从这些json数据可以抽取出音乐文件的链接,由于现在网络信息更新很快,读者想要API可以自行百度,实时更新,避免接口失效
三.思路
1.设置请求头信息,主要是params里的参数,相应的键值需要分析网页
2.请求API获得json数据,分析json数据,根据字典的相应语法取出想要的数据,每首歌曲都有自己的ID号码,首先需要取出这个数据
3.通过ID号定位找到歌曲的链接,下载歌曲
4.优化交互界面
四.代码实现及运行
import requests
import json
class MyMusic(object):
def __init__(self):
# 设置请求头
self.url = "https://api.imjad.cn/cloudmusic/" # api
self.headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36",}
self.params_search = {
'type': 'search',
'search_type': str(1),
'limit': str(20),#返回20个搜索结果
's': '',#歌手
'offset': str(0)
}
self.params_download = {
'type': 'song',
'id': '',#歌曲ID
'br': str