背景
我很喜欢豆瓣FM的风格,然而它无法满足我日常的需求,手机上用网易云音乐,家里海信电视用QQ音乐、天猫放糖好像是虾米。好累啊,舍不得豆瓣的歌,想把我收藏的“红心歌曲”清单都下载下来。

步骤一
模拟登陆豆瓣,使用Fiddler拦截http协议,查看登录请求。

步骤二
分析http请求,想要获取“红心歌曲”需要三次http请求:
第一次:登录获取用户标识cookie
第二次:使用cookie获取红心歌单主键—sid
第三次:根据多个sid获取歌曲的信息(包括歌名、歌手、专辑图片、甚至是播放地址[好惊喜Orz])

http请求分析的方法,简单如下:

1、你得了解一下http协议,知道它的请求包括头部headers、内容body
2、请求头中比较重要的两个是

  • content-type,有时候你的body是需要urlencode的;
  • referrer,有的网站服务器是需要验证这个的,不然不给过。

3、响应消息,一般只关注body,需要先把字节码转换成字符串,一般都是json格式。

其他
java、maven、springBoot版本地址:
https://github.com/haerxiong/douban_fm (包涵了简单的播放功能、下载歌单)
nodejs版本:
https://github.com/haerxiong/nodejs/tree/master/httpget/douban (仅下载歌单)

原文地址:https://blog.csdn.net/haerxiong/article/details/84833651

[Demo示例]爬取豆瓣FM个人收藏歌曲“红心列表”相关推荐

  1. 入门爬虫示例-爬取豆瓣短评

    群里有个小妹妹,让我帮她写的代码,好像是作业什么的.花了几分钟看了一下,随便写写,分享给有需要的童鞋,我用python 3 写的,实现的功能就是:爬取豆瓣短评,然后将数据写入本地的excel表格,数据 ...

  2. Python爬虫学习之爬取豆瓣音乐Top250存入Excel表格中

    前言 目标网站:https://music.douban.com/top250 任务: 爬取豆瓣音乐Top250的歌曲名 爬取豆瓣音乐Top250的歌曲对应的表演者.发行时间和音乐流派(分别对应下图斜 ...

  3. 源码大公开!Python爬取豆瓣电影Top250源代码,赶紧收藏!

    哈喽~大家好,我是恰恰.不知道是不是有很多小伙伴跟我一样,很喜欢看电影,尤其是那种别人推荐的豆瓣高分电影,所以学Python就有一个好处,用Python爬取豆瓣电影那是分分钟的事,再也不用因为有些电影 ...

  4. python爬取豆瓣电影信息可行性分析_Python爬虫实现的根据分类爬取豆瓣电影信息功能示例...

    本文实例讲述了Python爬虫实现的根据分类爬取豆瓣电影信息功能.分享给大家供大家参考,具体如下: 代码的入口:if __name__ == '__main__': main()#! /usr/bin ...

  5. BeautifulSoup及爬取豆瓣评论

    BS4的理解 BS4会将html文档对象转换为python可以识别的四种对象: Tag: 标签对象 NavigableString : 字符内容操作对象 BeautifulSoup: 文档对象 Com ...

  6. 爬虫学习笔记(三)——利用JSON爬取豆瓣热映的使用

    系列文章目录 爬虫学习笔记(一):requests基础用法之爬取各类主流网站1 爬虫学习笔记(二):requests基础用法之爬取各类主流网站2 文章目录 系列文章目录 前言 一.JSON是什么? 二 ...

  7. 基于Scrapy框架爬取豆瓣《复联4》影评,并生成词云

    基于Scrapy框架爬取豆瓣<复联4>影评,并生成词云 1. 介绍及开发环境 2. 爬虫实现 2.1 新建项目 2.2 构造请求 2.3 提取信息 2.4 数据存储 2.4 运行结果 3. ...

  8. scrapy爬虫框架教程(二)-- 爬取豆瓣电影

    前言 经过上一篇教程我们已经大致了解了Scrapy的基本情况,并写了一个简单的小demo.这次我会以爬取豆瓣电影TOP250为例进一步为大家讲解一个完整爬虫的流程. 工具和环境 语言:python 2 ...

  9. Python 爬取周杰伦歌曲信息,爬取豆瓣top250的电影,并保存至excel中

    使用requests.BeautifulSoup模块,在网上爬取信息.有的网页可以直接爬取到,有些则需要分步加载,这时就需要使用network进行分析找到信息对应的请求. 有的会反爬虫,则需要添加he ...

最新文章

  1. 最全技术剖析:百度视觉团队获世界最大规模目标检测竞赛冠军
  2. 如何找到文件的家-打开文件对话框openFileDialog
  3. ELNET服务被我删了,如何安装?
  4. Mysql 解决1251- Client does not support authentication protocol requested by server...的问题
  5. 计算几何-经典算法-凸包
  6. 直播预告 | 共识、区块链和全球一体化经济
  7. P2730 魔板 Magic Squares (搜索)
  8. 混合云应用双活容灾实践
  9. inxni扫地机器人_实用型助手,inxni以内扫地机器人 X332
  10. Django 自定义表名
  11. 与殿堂级大师隔空对话——一张纸是怎么限制了我们的想象力
  12. q7goodies事例_Java 8 Friday Goodies:SQL ResultSet流
  13. 非空约束 mysql
  14. [导入]如何点击按钮弹出新窗口,输入数据后返回并刷新页面?(老孟)
  15. python 相关系数_Python计算皮尔逊 pearson相关系数
  16. 怎样批量修改图片大小?
  17. EasyUi入门教程01
  18. 社会学与计算机哪个考研容易,国内几所较热的社会学系考研难度比较
  19. WIFI的传输距离介绍
  20. 学校计算机社团面试自我介绍ppt,大学生大一社团面试自我介绍PPT

热门文章

  1. 最大化参数 火车头_火车头采集器教程:使用正则匹配模式采集数据
  2. 程序员式贪吃蛇,URL贪吃蛇和源码贪吃蛇你值得一玩
  3. 精细化运营时代,金融魔镜如何助力各产品线实现业务增长
  4. 暴涨买卖有望趋势线顶底选股公式 通达信波段趋势顶底指标
  5. Android APPT2 报异常处理
  6. App广告之商业变现的实现策略
  7. 东师《近代物理实验》离线作业网考
  8. 联想td430服务器装系统,ThinkServerRAID300阵列配置基本操作
  9. vista常见故障及解决
  10. 正则校验手机号是否存在3位以上豹子号或升降连号