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

作者:上海小胖 时间:2023-07-08 13:33:27 

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的强大。

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

来源:https://segmentfault.com/a/1190000018448203

标签:python,网易云,歌单
0
投稿

猜你喜欢

  • Python使用matplotlib实现在坐标系中画一个矩形的方法

    2022-05-13 00:19:13
  • Pytho的HTTP交互httpx包模块使用详解

    2022-11-17 06:03:29
  • python中filter,map,reduce的作用

    2023-12-18 11:13:15
  • 解决TensorFlow调用Keras库函数存在的问题

    2023-11-20 15:04:25
  • 很有意思的SQL多行数据拼接

    2024-01-28 02:08:56
  • scrapy-redis的安装部署步骤讲解

    2023-03-18 11:53:41
  • python可迭代类型遍历过程中数据改变会不会报错

    2021-04-15 19:40:52
  • jRaiser与jQuery的冲突问题

    2010-07-27 12:36:00
  • Golang截取字符串方法示例讲解及对比

    2024-05-09 14:57:29
  • python数学建模(SciPy+ Numpy+Pandas)

    2021-02-17 11:05:14
  • 使用pandas对矢量化数据进行替换处理的方法

    2022-03-26 06:53:04
  • 利用WSH获取计算机硬件信息、DNS信息等

    2008-05-05 13:04:00
  • 教你怎么用PyCharm为同一服务器配置多个python解释器

    2022-01-29 10:22:21
  • 谈谈Tempdb对SQL Server性能优化有何影响

    2024-01-28 04:55:31
  • selenium+python自动化测试之使用webdriver操作浏览器的方法

    2023-06-28 03:04:47
  • Golang测试框架goconvey进行单元测试流程介绍

    2024-02-09 04:21:27
  • PHP session会话的安全性分析

    2023-11-21 23:47:59
  • Python语法学习之正则表达式的使用详解

    2023-02-11 15:39:26
  • Python微服务开发之使用FastAPI构建高效API

    2022-04-20 21:51:13
  • PHP输出JSON格式数据方式

    2023-06-24 06:39:09
  • asp之家 网络编程 m.aspxhome.com