美文网首页
Python萌新 爬取喜马拉雅免费排行榜里所有音乐,大佬请指教

Python萌新 爬取喜马拉雅免费排行榜里所有音乐,大佬请指教

作者: RedeemMyself | 来源:发表于2018-10-18 22:32 被阅读0次

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()

希望大佬们不吝赐教!!!感激不尽!

相关文章

网友评论

      本文标题:Python萌新 爬取喜马拉雅免费排行榜里所有音乐,大佬请指教

      本文链接:https://www.haomeiwen.com/subject/jblezftx.html