老规矩,先上代码

import requests

import os

import urllib

# json文件地址

json_url = "https://www.ximalaya.com/sets/8912476.ext.json"

# 仿冒Chrome浏览器进行访问,否则会无法访问

headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36'}

response = requests.get(json_url, headers=headers)

# 获取json文件

full_json = response.json()

# 找到所有的声音

tracks = full_json['tracks']

# 创建下载文件夹

if not os.path.exists('download'):

os.makedirs('download')

# 逐个下载

for track in tracks:

# 获取json中的下载地址和标题

url = track['play_url']

title = track['title']

# 用标题作为文件名

filename = "download/"+title+".mp3"

# 下载

with urllib.request.urlopen(url) as web:

with open(filename, 'wb+') as outfile:

outfile.write(web.read())

# 输出下载结果

print(title," downloaded.")

print('Download is done.')

这次的抓取是顺着上一篇,上一次在抓取iTunes的时候看到有些音频的源是来自喜马拉雅的,所以,我顺便去喜马拉雅转了一下。

每一个喜马拉雅的专辑,例如:郭德纲21年相声精选,都会有一个分享链接,点开后,选择“展开获取专辑链接”,这时候会有“html代码”、“通用代码”和“微电台”三个选项,选择html代码,并复制链接:https://www.ximalaya.com/thirdparty/player/album/player.html?id=9723091&type=red。

把上面的HTML代码的地址复制到浏览器中打开,并使用浏览器的开发者工具跟踪网络情况,会发现一个xhr里面包含该专辑所有的音频信息,地址为https://www.ximalaya.com/sets/9723091.ext.json,只需要分析该json的字段就可以抓紧了。

python代码没有什么难度。

路人:“禅师,喜马拉雅上面这些免费资源随时可以收听,流量也不算大,为什么还要下载呢?”

禅师微微一笑,指着面前一把木锤对路人道:“看看它你就明白了。”

路人参详许久,若有所思道:“大师的意思是否是说,下载的意义就像这把木锤一样,看似平淡无奇,但是有一种工匠精神?”

大师闭上眼睛道:“非也!我意思是,我下载关你锤子事。”

python喜马拉雅收费_python抓取喜马拉雅免费专辑相关推荐

  1. python爬取喜马拉雅收费_python 爬取喜马拉雅节目生成RSS Feed

    记录于:2020年12月03日 用了N年的手机在经历N次掉落之后终于扛不住了,后背都张嘴了,估计再摔一次电池都能飞出来. 换了手机,由于之前有听喜马拉雅的习惯,但是手机里自带有播客软件,强迫症逼着我不 ...

  2. python内容目标_python抓取一个页面的目标网址,然后抓取目标网址里的内容

    这次测试的是招聘页面 https://www.liepin.com/zhaopin/?key=python 目标是先抓取到里面各个公司职位介绍的链接,然后在根据链接抓取到里面根据职位的介绍. 代码如下 ...

  3. python行业中性_Python抓取分析淘宝连衣裙数据,128元真的是低价人群分界线吗?...

    1.我是一个低价人群用户 上周发表文章<一个匿名用户的淘宝"连衣裙"大观>后,交流群里面很热闹地讨论了起来,小伙伴们都在秀自己的淘宝连衣裙搜索价格,相较于小伙伴们搜索出 ...

  4. python下载电影_Python抓取电影天堂电影信息的代码

    Python2.7Mac OS 抓取的是电影天堂里面最新电影的页面.链接地址: http://www.dytt8.net/html/gndy/dyzz/index.html 获取页面的中电影详情页链接 ...

  5. python找房源_python抓取链家房源信息(二)

    试着用scrapy将之前写的抓取链家网信息的重新写了写 然后先是用了第一页的网页作为测试,调试代码,然后发现总是抓取的时候遇见了 类似于这样的问题,并且抓取不到信息 2017-03-28 17:52: ...

  6. python 京东 价格_python抓取京东商品价格

    本文介绍两种抓取价格的方法 1.读取接口获取价格 scrapy等等..简单 2.基于模拟浏览器读取页面抓取selenium 简单 京东商品价格目前是基于api接口获取然后通过js进行数值初始化 一.基 ...

  7. python找房源_python抓取贝壳房源信息

    分析了贝壳的房源信息数据,发现地址链接的参数传递是有规律的 a3 实际表示的 l4 表示的是 然后 将复合条件拼成一个字符串,带过去.看着真的很像加密过的.赞 import os, re import ...

  8. python关键词排名_Python抓取爱站关键词排名数据

    Python批量下载爱站的关键字排名数据,非常好用.直接上代码: # -*- coding: utf-8 -*- from cPAMIE import PAMIE import os from Bea ...

  9. python汇率编程_python抓取汇率

    1 #-*- coding: utf-8 -*- 2 """ 3 获取实时汇率4 Created on Fri Oct 18 13:11:40 20135 6 @auth ...

最新文章

  1. 马斯克蝉联美国CEO薪酬榜No.1,年入41亿,库克皮猜纳德拉加起来都没他高
  2. 2. 动态分配字符串
  3. c语言队列(顺序队列,循环队列,链式队列)
  4. IOS开发之----常用函数和常数--秀清
  5. Hibernate配置C3P0连接池(在配好基本的hibernate配置下使用)
  6. Python随机数生成方法
  7. RabbitMq 持久化(转)
  8. 多类目MoE模型在京东电商搜索中的应用
  9. 图片怎么转换成pdf格式?
  10. 快速掌握Python的捷径-Python基础前传(1) 1
  11. python 假设检验
  12. ML学习分享系列(1)_计算广告小窥[上]
  13. 【BZOJ4987】Tree(树形dp)
  14. 北京大学医疗科技风论文答辩PPT模板
  15. Laravel的中大型项目构架
  16. 外包or外派岗,可以去?
  17. Go-directed and habitual learning
  18. Android智能手机安全解决方案
  19. BufferedWriter的write(int c)方法
  20. L1-059 敲笨钟(分数 20)

热门文章

  1. 探索Julia(part4)--数组
  2. Django(part10)--POST请求
  3. 第三次学JAVA再学不好就吃翔(part52)--String类的其他功能
  4. Psych101(part7)--Day7
  5. 一文看懂:互联网产品分析,该如何做?
  6. 【leetcode记录03】动态规划
  7. SAP Spartacus HTTP请求的错误处理机制
  8. 关于jasmine里debugElement.query和fixture.detectChanges的依赖关系
  9. 微软Azure storage account的connection string
  10. JavaScript ES6对Proxy的原生支持的一个例子