Python网络爬虫:批量下载喜马拉雅音频

本文介绍了如何利用Python解析喜马拉雅网站,获取音频地址并批量下载音频。首先解析音频URL,接着解析专栏网页获取音频ID和名称,然后通过音频ID请求音频源地址,最后下载保存音频文件。
摘要由CSDN通过智能技术生成

hello,大家好,我是wangzirui32,今天我们来学习如何批量下载喜马拉雅音频。
开始学习吧!

1. 解析网站

1.1 获取音频地址

在喜马拉雅网站上,随便点开一个音频,打开“开发者工具”,再点击播放按钮,可以看到出现了多个请求:
请求经过排查,发现可疑url:
网址查看它的响应信息,发现音频地址就在里面:
音频地址接下来,解析这个返回音频地址的url:

https://www.ximalaya.com/revision/play/v1/audio?id=348451879&ptype=1

发现url中的id参数就决定了返回的音频地址,而id参数是音频的id号。

1.2 解析专栏网页

我们已经知道了获取音频url的网址,接下来要获取一个专栏内的音频id和名称,打开一个专栏,发现:
li标签所有的音频存放在class为1F_的li标签中,再来解析li标签:
解析在li标签中的第一个a标签存储着我们所有需要的数据,妙~啊!

1.3 整理亿下思路

思路:

  1. 获取专栏内的li标签
  2. 获取li标签里的第一个a标签
  3. 读取a标签的title和href属性
  4. 将href解析成音频id
  5. 将id带入url请求音频源地址
  6. 提取音频源地址
  7. 请求音频源地址
  8. 保存音频(文件名为a的title属性)

思路整理完了,开始编写代码。

2. 编写爬取代码

代码奉上——

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值