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

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

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

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值