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检测服务器是否正常
Feb 16 Python
Python实现身份证号码解析
Sep 01 Python
Python中的FTP通信模块ftplib的用法整理
Jul 08 Python
Python使用add_subplot与subplot画子图操作示例
Jun 01 Python
利用python对Excel中的特定数据提取并写入新表的方法
Jun 14 Python
对python使用telnet实现弱密码登录的方法详解
Jan 26 Python
python3编写ThinkPHP命令执行Getshell的方法
Feb 26 Python
python 两个数据库postgresql对比
Oct 21 Python
Python实现AI换脸功能
Apr 10 Python
jupyter修改文件名方式(TensorFlow)
Apr 21 Python
pytorch查看通道数 维数 尺寸大小方式
May 26 Python
pycharm无法安装cv2模块问题
May 20 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仿ZOL分页类代码
2008/10/02 PHP
PHP实现二叉树的深度优先与广度优先遍历方法
2015/09/28 PHP
Laravel框架实现多个视图共享相同数据的方法详解
2019/07/09 PHP
游戏人文件夹程序 ver 4.03
2006/07/14 Javascript
javascript操作cookie的文章(设置,删除cookies)
2010/04/01 Javascript
jquery 图片截取工具jquery.imagecropper.js
2010/04/09 Javascript
关于jQuery对象数据缓存Cache原理以及jQuery.data详解
2013/04/07 Javascript
jquery ajax的success回调函数中实现按钮置灰倒计时
2013/11/19 Javascript
javascript中普通函数的使用介绍
2013/12/19 Javascript
移动节点的jquery代码
2014/01/13 Javascript
改变状态栏文字的js代码
2014/06/13 Javascript
Js和JQuery获取鼠标指针坐标的实现代码分享
2015/05/25 Javascript
JavaScript获取两个数组交集的方法
2015/06/09 Javascript
特殊日期提示功能的实现方法
2016/06/16 Javascript
Java与JavaScript中判断两字符串是否相等的区别
2017/03/13 Javascript
Vue.js路由vue-router使用方法详解
2017/03/20 Javascript
浅谈angular2 组件的生命周期钩子
2017/08/12 Javascript
基于jquery实现五星好评
2017/11/18 jQuery
vue-router的HTML5 History 模式设置
2018/09/08 Javascript
vue鼠标悬停事件实例详解
2019/04/01 Javascript
Vue数据绑定简析小结
2019/05/07 Javascript
基于JS抓取某高校附近共享单车位置 使用web方式展示位置变化代码实例
2019/08/27 Javascript
vue 如何从单页应用改造成多页应用
2020/10/23 Javascript
python套接字流重定向实例汇总
2016/03/03 Python
python在回调函数中获取返回值的方法
2019/02/22 Python
Python3.5 Json与pickle实现数据序列化与反序列化操作示例
2019/04/29 Python
美国在线面料商店:Online Fabric Store
2018/07/26 全球购物
UNIX文件类型
2013/08/29 面试题
临床医师专业个人自我评价范文
2013/11/07 职场文书
餐饮管理自我介绍信
2014/01/15 职场文书
3分钟英语演讲稿
2014/04/29 职场文书
改进作风怎么办发言材料
2014/08/17 职场文书
五星级酒店前台接待岗位职责
2015/04/02 职场文书
《敬重卑微》读后感3篇
2019/11/26 职场文书
Python中的套接字编程是什么?
2021/06/21 Python
电脑开机弹出documents文件夹怎么回事?弹出documents文件夹解决方法
2022/04/08 数码科技