爬虫听书爬取音频

先定义一个文件以便后面保存,然后写一个如果不存在这个文件就创建一个

filename = '恐怖听故事\\'
if not os.path.exists(filename):
    os.mkdir(filename)

在获取数据网址

mulu_dizhi = 'https://www.ximalaya.com/revision/album/v1/getTracksList?albumId=30210574&pageNum=1&sort=0&pageSize=30'

然后在找header头

可以右键查看,然后找网络,随便点一个,找到user-agent那一项,用字典格式就是加上引号

headers = {
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36'
}

获取目录信息

mulu_xinxi = requests.get(mulu_dizhi, headers=headers).json()
字典取值
mulu_xinxi = mulu_xinxi['data']['tracks']
 for循环: 从列表中 一条条的拿取数据
for yinpin_xinxi in mulu_xinxi:
    # print(yinpin_xinxi)
    yinpin_title = yinpin_xinxi['title']
    print(yinpin_title)
    play_dizhi = f'https://www.ximalaya.com/revision/play/v1/audio?id={yinpin_xinxi["trackId"]}&ptype=1'
    yinpin_data = requests.get(play_dizhi, headers=headers).json()
    # print(yinpin_data)
    yinpin_dizhi = yinpin_data['data']['src'] # 1    2
    print(yinpin_dizhi)
打开文件 / 读写形式
二进制 : 图片 音频 视频 : content
   yinpin = open(filename + yinpin_title + '.m4a', mode='wb')
    yinpin.write(requests.get(yinpin_dizhi, headers=headers).content)
    yinpin.close()

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值