本次分享是对QQ音乐网页中部分歌手前十首热门歌曲的基本信息(歌手名,个人简介,歌曲名,所在专辑和发行时间)进行一个爬取收集并录入Excel文件中。
首先让我们先了解一下爬虫的基本流程。
爬虫程序的基本流程
-
获取网页
python中提供了requests、urllib等很多库来帮助我们获取页面信息。本篇文章使用的是requests库
-
提取信息
我们运用第三方库获取的网页信息是原始的,没有经过处理的数据,我们需要通过处理筛选提取自己所需要的数据,在这里我们利用的是bs4(BeautiSoup)库来提取信息的。
-
保存信息
我们通过筛选获取到的大量数据,我们可以按照用多种形式来保存。如:可以保存为txt文本、Excel文件或者存储到数据库中。甚至可以直接存储到服务器中。大家可以根据自己后期对该数据的使用或者查看方式来选择保存信息的方式。
-
自动化运行
爬虫的工作复杂起来是一个庞大繁琐的程序,这时我们可以通过一些自动化工具帮助我们的爬虫运行。
结果如图所示:
![]()


整体是一个xls文件,里面包含多张表格分别对应每个歌手的信息。接下来让我们一起来分析一下这个结果的实现过程。
第一步 分析网页
如何找到我们需要的数据的第一步也是最重要的一步便是分析网页,首先让我们先打开QQ音乐歌手界面的网页,并按【Fn+F12】调出开发者工具。
以许嵩为例分析网页代码,选中他可以到跳转代码处

展开该处代码我们会发现这是一个层级标签代码,

在这段代码中我们可以分析出几个重点内容:
- 他是一个层级标签的代码,有两层
- 两个标签的一些属性值:class值,title值和href值(是我们常用到的)
- 他叫许嵩(不是废话的废话)
让我们对许嵩进行一个深入的了解,点击他的名字进入他的主页后点击全部进入以下页面,然后再次打开开发者工具

根据自己对数据的要求,除去他的姓名,我们还需要知道他的个人简介,歌曲名,专辑名,歌曲时长和发行时间,在本页面我们可以找到前四个要求的位置和代码


在此时,我们点击这首歌跳转的网页会有一个有趣的现象

根据以上分析,我们可以联想到,如果利用爬虫程序在QQ音乐游走获取数据,所需要的url几乎可以分为两个部分
- http://y.qq.com
- 某个可以可以跳转的对象标签的href值
那么可以用python中的字符串拼接,对网页进行深度或者广度的爬取

本文介绍了如何使用Python的requests和BeautifulSoup库爬取QQ音乐网页上的歌手信息和热门歌曲,包括歌手名、个人简介、歌曲名、专辑和发行时间,并将数据保存到Excel文件中。通过分析网页结构,提取所需数据,并创建表格样式,实现了自动化数据抓取和整理。
2225

被折叠的 条评论
为什么被折叠?



