Python萌新 爬取喜马拉雅免费排行榜里所有音乐,大佬请指教
第一次用这个写,不太熟悉,想请各位帮忙指点指点,谢谢啦!
用python爬虫实现下载喜马拉雅免费音乐榜里的音乐,看过潭州课堂梦飞老师的视频,加上自己的思考,最终得到的这个代码。
初学python,希望给位能多多指点!
贴上我的源码,第一次完整的写一个,有很多不足之处,希望大家可以帮忙指正。感激不尽!
import json
import requests
def xima(albumNumber):
start_url = "https://www.ximalaya.com/revision/play/album?albumId=%d&pageNum={}&sort=-1&pageSize=30"%albumNumber
headers={
"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36"
}
for i in range(5):
url=start_url.format(i+1)
r = requests.get(url,headers=headers)
ret = r.content.decode()
#print(ret)
#print(type(ret))
result = json.loads(ret)
#print(result['data']['tracksAudioPlay'])
#print(type(result))
for i in result['data']['tracksAudioPlay']:
print(i)
# print( i['src'])
# print(i['trackName'])
src = i['src']
name = i['trackName']
with open('./完整喜马拉雅音乐/{}.m4a'.format(name),'ab') as f:
music = requests.get(src,headers=headers)
f.write(music.content)
def album():
url = "https://www.ximalaya.com/revision/getRankList?code=yinyue"
headers = {
"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36"
}
r = requests.get(url,headers=headers)
ret = r.content.decode()
print(ret)
result = json.loads(ret)
print(result['data']['albums'])
for i in result['data']['albums']:
albumNumber = i['id']
print(albumNumber)
xima(albumNumber)
album()
希望大佬们不吝赐教!!!感激不尽!
网友评论