15行Python代码实现网易云热门歌单实例教程


Posted in Python onMarch 10, 2019

0. 引言

马上314情人节就要来了,是否需要一首歌来抚慰你,受伤或躁动的心灵。来吧,今天教你用15行代码搞定热门歌单。学起来并听起来吧。

本文使用的是Selenium模块,它是一个自动化测试工具,利用它我们可以驱动浏览器执行特定的动作,如点击、下拉等等操作,对于一些 JavaScript 渲染的页面来说,此种抓取方式非常有效。另外采用了Chrome浏览器配合Selenium工作。

下面话不多说了,来一起看看详细的介绍吧

1. 环境

操作系统:Windows

Python版本:3.7.2

2. 准备工作

a. 若你的环境中没有selenium模块,直接使用pip安装即可。

pip install selenium

b. 打开谷歌浏览器,检查Chrome的版本:在浏览器地址中输入 chrome://settings/help 回车即可看到。

15行Python代码实现网易云热门歌单实例教程

c. 打开ChromeDriver 的官方网站:
https://sites.google.com/a/ch...
寻找与你当前浏览器版本相对应的ChromeDriver下载。

15行Python代码实现网易云热门歌单实例教程

d. 选择你自己的操作系统类型进行下载即可。

15行Python代码实现网易云热门歌单实例教程

e. 以Windows为例,下载结束后,将ChromeDriver 放置在python安装目录下的Scripts文件夹即可。

15行Python代码实现网易云热门歌单实例教程

准备工作完成,代码写起来吧~

3. 迷你爬虫的实现

我们这次的目标是爬取热门歌单,比如网易云音乐中播放量大于1000万的歌单信息(歌单名称、链接)。

a. 我们先来打开网易云的歌单第一页:
https://music.163.com/#/disco...

b. 使用Chrome的开发者工具<F12>进行分析。

15行Python代码实现网易云热门歌单实例教程

我们想要拿的信息全在这里:

  • msk,封面[mask]:有歌单的名称及链接
  • nb,播放数[number broadcast]:135万

c. 我们还需要遍历所有的页,使用工具继续分析,找到“下一页”的URL。

15行Python代码实现网易云热门歌单实例教程

d. 切换至最后一页,拿到最后一页的URL。

15行Python代码实现网易云热门歌单实例教程

e. 等我们爬取完所有符合的歌单信息后,将其保存在本地。

f. 全部工作结束,最后再通过下面的伪代码回顾下整体思路。

15行Python代码实现网易云热门歌单实例教程

g. 爬取的效果如下:

15行Python代码实现网易云热门歌单实例教程

4. 总结

本文旨在安抚你因情人节受伤的小心灵,同时带你入个爬虫的门,感受下python的强大。

好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
研究Python的ORM框架中的SQLAlchemy库的映射关系
Apr 25 Python
浅谈python 线程池threadpool之实现
Nov 17 Python
使用Python横向合并excel文件的实例
Dec 11 Python
Python 通过打码平台实现验证码的实现
May 13 Python
Python匿名函数/排序函数/过滤函数/映射函数/递归/二分法
Jun 05 Python
django-初始配置(纯手写)详解
Jul 30 Python
Python递归函数 二分查找算法实现解析
Aug 12 Python
python中有帮助函数吗
Jun 19 Python
python类共享变量操作
Sep 03 Python
聊聊python在linux下与windows下导入模块的区别说明
Mar 03 Python
python入门学习关于for else的特殊特性讲解
Nov 20 Python
pycharm安装深度学习pytorch的d2l包失败问题解决
Mar 25 Python
Python如何爬取实时变化的WebSocket数据的方法
Mar 09 #Python
浅谈python的深浅拷贝以及fromkeys的用法
Mar 08 #Python
Python高级特性与几种函数的讲解
Mar 08 #Python
Python I/O与进程的详细讲解
Mar 08 #Python
举例讲解Python常用模块
Mar 08 #Python
python re库的正则表达式入门学习教程
Mar 08 #Python
opencv与numpy的图像基本操作
Mar 08 #Python
You might like
PHP开发工具ZendStudio下Xdebug工具使用说明详解
2013/11/11 PHP
PHP7多线程搭建教程
2017/04/21 PHP
JavaScript是否可实现多线程  深入理解JavaScript定时机制
2009/12/22 Javascript
javascript中使用css需要注意的地方小结
2010/09/01 Javascript
jQuery动态添加的元素绑定事件处理函数代码
2011/08/02 Javascript
基于javascript实现动态显示当前系统时间
2016/01/28 Javascript
javascript回到顶部特效
2016/07/30 Javascript
JavaScript的兼容性与调试技巧
2016/11/22 Javascript
JS判断输入的字符串是否是数字的方法(正则表达式)
2016/11/29 Javascript
javascript中call,apply,bind函数用法示例
2016/12/19 Javascript
React Router基础使用
2017/01/17 Javascript
vue货币过滤器的实现方法
2017/04/01 Javascript
vue2.0结合Element-ui实战案例
2019/03/06 Javascript
详解javascript设计模式三:代理模式
2019/03/25 Javascript
ES6基础之字符串和函数的拓展详解
2019/08/22 Javascript
vue.js实现二级菜单效果
2019/10/19 Javascript
微信小程序实现选择地址省市区三级联动
2020/06/21 Javascript
[01:46]TI4西雅图DOTA2前线报道 中国选手抱团调时差
2014/07/08 DOTA
Python全局变量操作详解
2015/04/14 Python
Python写入数据到MP3文件中的方法
2015/07/10 Python
Python网络爬虫实例讲解
2016/04/28 Python
Python使用progressbar模块实现的显示进度条功能
2018/05/31 Python
python 直接赋值和copy的区别详解
2019/08/07 Python
PageFactory设计模式基于python实现
2020/04/14 Python
Python读入mnist二进制图像文件并显示实例
2020/04/24 Python
使用Keras预训练模型ResNet50进行图像分类方式
2020/05/23 Python
Python 数据分析之逐块读取文本的实现
2020/12/14 Python
解决virtualenv -p python3 venv报错的问题
2021/02/05 Python
TUMI澳大利亚网站:美国旅行箱包品牌
2017/03/27 全球购物
中软国际Java程序员机试题
2012/08/19 面试题
大三自我鉴定范文
2013/10/05 职场文书
人事专员的岗位职责
2014/03/01 职场文书
抽奖活动主持词
2014/03/31 职场文书
全国文明单位申报材料
2014/05/31 职场文书
离婚协议书怎么写(范本参考)
2014/09/30 职场文书
创业计划书之孕婴生活馆
2019/11/11 职场文书