• 喜玛拉雅音频下载


    from urllib import request,parse
    from bs4 import BeautifulSoup
    import os
    import time,random
    import re,json
    
    def work(bh,url1,url2):
        if os.path.isdir('d:/ximalaya/%s'%bh) == False:
            os.makedirs('d:/ximalaya/%s'%bh)
        conten = []
        headers = {
            'User-Agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Maxthon/5.0 Chrome/61.0.3163.79 Safari/537.36',
            'Upgrade-Insecure-Requests': '1',
            'Host':'www.ximalaya.com',
            'Referer':'https://www.ximalaya.com/renwen/%s/'%bh,
        }
        req = request.Request(url1,headers = headers)
        page = request.urlopen(req,timeout=6)
        html = page.read().decode('utf-8')
        html_json = json.loads(html)
        page = html_json['data']['trackTotalCount']
        page_cont = page//30 +2
        for ii in range(1,page_cont):
            url ='https://www.ximalaya.com/revision/play/album?albumId=%s&pageNum=%s&sort=-1&pageSize=30'%(bh,str(ii))
            req = request.Request(url, headers=headers)
            page = request.urlopen(req, timeout=6)
            html = page.read().decode('utf-8')
            html_json = json.loads(html)
            titles = html_json['data']['tracksAudioPlay']
            for ii in titles:
    
                if os.path.exists('D:\ximalaya\'+bh+'\'+ii['trackName']) == False:
                    print('下载%s中........'%ii['trackName'])
                    request.urlretrieve(ii['src'],'D:\ximalaya\'+bh+'\'+ii['trackName'])
                    sjz = random.randint(3, 9)
                    print('随机等待%d秒' % sjz)
                    time.sleep(sjz)
                else:
                    print('文件已经存在--%s'%ii['trackName'])
    
    if __name__ == '__main__':
        #bh = input('请输入音频网址的编码号:')
        bh_list = ['4505461','5857398']
        for bh in bh_list:
            url1 = 'https://www.ximalaya.com/revision/album/getTracksList?albumId=%s&pageNum=1' % bh
            url2 = 'https://www.ximalaya.com/revision/play/album?albumId=%s'%bh
            work(bh,url1,url2)

    根据网络的授课视频,自己进行了完善,直接定义好音频专辑的编辑,直接下载到D盘的ximalaya的文件夹下,再用格式工厂转换成MP3格式即可了。

  • 相关阅读:
    获取Activity中得到焦点的EditText
    SwipeRefreshLayout嵌套ScrollView包裹复杂头布局和RecyclerView
    摄像机识别图片中的手机号
    Glide 加载图片
    反射,元类
    类与实例
    多态
    sys模块理解补充
    python中os模块再回顾
    面向对象之封装
  • 原文地址:https://www.cnblogs.com/runrungo/p/10515450.html
Copyright © 2020-2023  润新知