python爬取音频下载的示例代码


Posted in Python onOctober 19, 2020

抓取“xmly”鬼故事音频

import json  # 在这个url,音频链接为JSON动态生成,所以用到了json模块
import requests
headers = {
  "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36"
}


# 请求网页
def open_url(url):
  r = requests.get(url, headers=headers)
  r.encoding = 'utf-8'
  html = r.text
  # 将JSON转化成字符串
  html = json.loads(html)
  return html


# 得到所有音频的链接
def get_urls(url):
  us = url['data']['tracksAudioPlay']
  return us


def main():
  num = 1
  url = 'https://www.ximalaya.com/revision/play/album?albumId=4256765&pageNum=1&sort=-1&pageSize=30'
  html = open_url(url)
  urls = get_urls(html)
  # 遍历得到每个音频的链接和对应的名称
  for ul in urls:
    uls = ul['src']
    filename = ul['trackName']
    reponse = requests.get(uls).content
    with open(filename + '.m4a', 'wb') as file:
      file.write(reponse)
    print(str(num) + '. ' + filename)
    num += 1

if __name__ == '__main__':
  main()

爬取结果

python爬取音频下载的示例代码

以上就是python爬取音频下载的示例代码的详细内容,更多关于Python 爬取音频下载的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python爬虫教程之爬取百度贴吧并下载的示例
Mar 07 Python
Python中的迭代器与生成器高级用法解析
Jun 28 Python
深入浅析ImageMagick命令执行漏洞
Oct 11 Python
Django中redis的使用方法(包括安装、配置、启动)
Feb 21 Python
python如何求解两数的最大公约数
Sep 27 Python
pyqt弹出新对话框,以及关闭对话框获取数据的实例
Jun 18 Python
利用Pandas和Numpy按时间戳将数据以Groupby方式分组
Jul 22 Python
python函数不定长参数使用方法解析
Dec 14 Python
使用tensorflow显示pb模型的所有网络结点方式
Jan 23 Python
python实现拼接图片
Mar 23 Python
详解pytorch tensor和ndarray转换相关总结
Sep 03 Python
Python使用socket去实现TCP客户端和TCP服务端
Apr 12 Python
Python爬虫教程知识点总结
Oct 19 #Python
自定义Django_rest_framework_jwt登陆错误返回的解决
Oct 18 #Python
如何利用python读取micaps文件详解
Oct 18 #Python
Python中Yield的基本用法
Oct 18 #Python
Anaconda+spyder+pycharm的pytorch配置详解(GPU)
Oct 18 #Python
Python通过format函数格式化显示值
Oct 17 #Python
Python如何使用vars返回对象的属性列表
Oct 17 #Python
You might like
以文本方式上传二进制文件的PHP程序
2006/10/09 PHP
PHP删除数组中特定元素的两种方法
2013/07/02 PHP
详解php中反射的应用
2016/03/15 PHP
为你的网站增加亮点的9款jQuery插件推荐
2011/05/03 Javascript
纯js网页画板(Graphics)类简介及实现代码
2012/12/24 Javascript
js 3秒后跳转页面的实现代码
2014/03/10 Javascript
js事件处理程序跨浏览器解决方案
2016/03/27 Javascript
对Angular.js Controller如何进行单元测试
2016/10/25 Javascript
Javascript中字符串和数字的操作方法整理
2017/01/22 Javascript
jQuery实现级联下拉框实战(5)
2017/02/08 Javascript
jQuery获取单选按钮radio选中值与去除所有radio选中状态的方法
2017/05/20 jQuery
JavaScript正则表达式简单实用实例
2017/06/23 Javascript
史上最全JavaScript常用的简写技巧(推荐)
2017/08/17 Javascript
JavaScript实现动态添加、移除元素或属性的方法分析
2019/01/03 Javascript
jQuery中使用validate插件校验表单功能
2019/05/24 jQuery
基于JavaScript实现简单的轮播图
2021/03/03 Javascript
[43:24]VG vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
[05:59]带你看看DPC的台前幕后
2021/03/11 DOTA
python3模拟百度登录并实现百度贴吧签到示例分享(百度贴吧自动签到)
2014/02/24 Python
跟老齐学Python之list和str比较
2014/09/20 Python
Python读取一个目录下所有目录和文件的方法
2016/07/15 Python
python 日期操作类代码
2018/05/05 Python
DRF跨域后端解决之django-cors-headers的使用
2019/01/27 Python
对Python3 pyc 文件的使用详解
2019/02/16 Python
Python 装饰器@,对函数进行功能扩展操作示例【开闭原则】
2019/10/17 Python
解决pandas展示数据输出时列名不能对齐的问题
2019/11/18 Python
python属于解释型语言么
2020/06/15 Python
CSS3 新增选择器的实例
2019/11/13 HTML / CSS
美国儿童运动鞋和服装零售商:Kids Foot Locker
2017/08/05 全球购物
公司投资建议书
2014/05/16 职场文书
义和团口号
2014/06/17 职场文书
法人委托书的范本格式
2014/09/11 职场文书
教师远程培训心得体会
2016/01/09 职场文书
Html5生成验证码的示例代码
2021/05/10 Javascript
解决Navicat for MySQL 连接 MySQL 报2005错误的问题
2021/05/29 MySQL
Mysql实现主从配置和多主多从配置
2021/06/02 MySQL