Python使用BeautifulSoup4爬取酷狗音乐代码实例
BeautifulSoup是Python中一个非常流行的HTML和XML解析库,可以帮助我们更方便地解析网页。本文将介绍如何使用BeautifulSoup4爬取酷狗音乐,并提供两个示例。
安装依赖库
在使用BeautifulSoup4爬取酷狗音乐之前,需要安装一些依赖库。以下是一个示例代码,演示如何使用pip安装依赖库:
pip install requests beautifulsoup4
示例1:爬取歌曲列表
以下是一个示例代码,演示如何使用Python和BeautifulSoup4爬取酷狗音乐的歌曲列表:
import requests
from bs4 import BeautifulSoup
url = 'http://www.kugou.com/yy/rank/home/1-8888.html?from=rank'
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36'}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'html.parser')
songs = soup.select('.pc_temp_songlist > ul > li > a')
for song in songs:
print(song.text)
在上面的代码中,我们首先导入了requests和BeautifulSoup类。然后,我们定义了一个名为url的变量,它包含要爬取的酷狗音乐的歌曲列表的URL。接下来,我们定义了一个名为headers的变量,它包含请求头信息。然后,我们使用requests库发送GET请求,并将响应存储在response变量中。接下来,我们使用BeautifulSoup类将响应文本解析为BeautifulSoup对象,并使用select()方法查找具有特定CSS选择器的元素。最后,我们使用text属性获取元素的文本内容,并打印每个歌曲的名称。
示例2:爬取歌曲下载链接
以下是一个示例代码,演示如何使用Python和BeautifulSoup4爬取酷狗音乐的歌曲下载链接:
import requests
from bs4 import BeautifulSoup
url = 'http://www.kugou.com/song/123456.html'
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36'}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'html.parser')
download_link = soup.select_one('#myAudio')['src']
print(download_link)
在上面的代码中,我们首先导入了requests和BeautifulSoup类。然后,我们定义了一个名为url的变量,它包含要爬取的酷狗音乐的歌曲下载链接的URL。接下来,我们定义了一个名为headers的变量,它包含请求头信息。然后,我们使用requests库发送GET请求,并将响应存储在response变量中。接下来,我们使用BeautifulSoup类将响应文本解析为BeautifulSoup对象,并使用select_one()方法查找具有特定CSS选择器的元素。最后,我们使用属性选择器获取元素的属性值,并打印歌曲的下载链接。
总结
本文介绍了如何使用Python和BeautifulSoup4爬取酷狗音乐,并提供了两个示例。我们使用了requests和BeautifulSoup类发送HTTP请求和解析HTML文档。这些工具可以帮我们更好地理解和分析网页,并做出更好的决策。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python使用beautifulsoup4爬取酷狗音乐代码实例 - Python技术站