代码
import requests
def listnum():
trackId = []
title = []
for i in range(1,3):
url = f'https://www.ximalaya.com/revision/album/v1/getTracksList?albumId=291718&pageNum={i}'
headers = {
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.108 Safari/537.36',
'content-type': 'application/x-www-form-urlencoded;charset=UTF-8',
}
response =requests.get(url,headers=headers).json()
for i in response['data']['tracks']:
trackId.append(i['trackId'])
title.append(i['title'])
print('获取listnum成功。。。。。')
return [title,trackId]
def get_musicSrc():
title,trackid = listnum()
src=[]
for i in trackid:
url = f'https://www.ximalaya.com/revision/play/v1/audio?id={i}&ptype=1'
headers = {
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.108 Safari/537.36',
'content-type': 'application/x-www-form-urlencoded;charset=UTF-8',
}
response = requests.get(url,headers=headers).json()
src.append(response['data']['src'])
print('获取musicSrc成功,准备写入文件。。。。')
return src,title
def into_file():
src,title = get_musicSrc()
music = list(zip(src,title))
for i in music:
response = requests.get(i[0]).content
with open('./music/{}'.format(i[1] + '.m4a'), 'wb') as f:
f.write(response)
print("写入成功。。。。。")
f.close()
if __name__ == '__main__':
into_file()
结尾
这个别看就几十首,速度那还是真的慢~~~哈哈哈哈哈哈