[Demo示例]爬取豆瓣FM个人收藏歌曲“红心列表”
背景
我很喜欢豆瓣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个人收藏歌曲“红心列表”相关推荐
- 入门爬虫示例-爬取豆瓣短评
群里有个小妹妹,让我帮她写的代码,好像是作业什么的.花了几分钟看了一下,随便写写,分享给有需要的童鞋,我用python 3 写的,实现的功能就是:爬取豆瓣短评,然后将数据写入本地的excel表格,数据 ...
- Python爬虫学习之爬取豆瓣音乐Top250存入Excel表格中
前言 目标网站:https://music.douban.com/top250 任务: 爬取豆瓣音乐Top250的歌曲名 爬取豆瓣音乐Top250的歌曲对应的表演者.发行时间和音乐流派(分别对应下图斜 ...
- 源码大公开!Python爬取豆瓣电影Top250源代码,赶紧收藏!
哈喽~大家好,我是恰恰.不知道是不是有很多小伙伴跟我一样,很喜欢看电影,尤其是那种别人推荐的豆瓣高分电影,所以学Python就有一个好处,用Python爬取豆瓣电影那是分分钟的事,再也不用因为有些电影 ...
- python爬取豆瓣电影信息可行性分析_Python爬虫实现的根据分类爬取豆瓣电影信息功能示例...
本文实例讲述了Python爬虫实现的根据分类爬取豆瓣电影信息功能.分享给大家供大家参考,具体如下: 代码的入口:if __name__ == '__main__': main()#! /usr/bin ...
- BeautifulSoup及爬取豆瓣评论
BS4的理解 BS4会将html文档对象转换为python可以识别的四种对象: Tag: 标签对象 NavigableString : 字符内容操作对象 BeautifulSoup: 文档对象 Com ...
- 爬虫学习笔记(三)——利用JSON爬取豆瓣热映的使用
系列文章目录 爬虫学习笔记(一):requests基础用法之爬取各类主流网站1 爬虫学习笔记(二):requests基础用法之爬取各类主流网站2 文章目录 系列文章目录 前言 一.JSON是什么? 二 ...
- 基于Scrapy框架爬取豆瓣《复联4》影评,并生成词云
基于Scrapy框架爬取豆瓣<复联4>影评,并生成词云 1. 介绍及开发环境 2. 爬虫实现 2.1 新建项目 2.2 构造请求 2.3 提取信息 2.4 数据存储 2.4 运行结果 3. ...
- scrapy爬虫框架教程(二)-- 爬取豆瓣电影
前言 经过上一篇教程我们已经大致了解了Scrapy的基本情况,并写了一个简单的小demo.这次我会以爬取豆瓣电影TOP250为例进一步为大家讲解一个完整爬虫的流程. 工具和环境 语言:python 2 ...
- Python 爬取周杰伦歌曲信息,爬取豆瓣top250的电影,并保存至excel中
使用requests.BeautifulSoup模块,在网上爬取信息.有的网页可以直接爬取到,有些则需要分步加载,这时就需要使用network进行分析找到信息对应的请求. 有的会反爬虫,则需要添加he ...
最新文章
- 最全技术剖析:百度视觉团队获世界最大规模目标检测竞赛冠军
- 如何找到文件的家-打开文件对话框openFileDialog
- ELNET服务被我删了,如何安装?
- Mysql 解决1251- Client does not support authentication protocol requested by server...的问题
- 计算几何-经典算法-凸包
- 直播预告 | 共识、区块链和全球一体化经济
- P2730 魔板 Magic Squares (搜索)
- 混合云应用双活容灾实践
- inxni扫地机器人_实用型助手,inxni以内扫地机器人 X332
- Django 自定义表名
- 与殿堂级大师隔空对话——一张纸是怎么限制了我们的想象力
- q7goodies事例_Java 8 Friday Goodies:SQL ResultSet流
- 非空约束 mysql
- [导入]如何点击按钮弹出新窗口,输入数据后返回并刷新页面?(老孟)
- python 相关系数_Python计算皮尔逊 pearson相关系数
- 怎样批量修改图片大小?
- EasyUi入门教程01
- 社会学与计算机哪个考研容易,国内几所较热的社会学系考研难度比较
- WIFI的传输距离介绍
- 学校计算机社团面试自我介绍ppt,大学生大一社团面试自我介绍PPT