python爬虫实践之爬取hao123音乐音乐导航

目录

概述

准备

所需模块

涉及知识点

运行效果

完成爬虫

1. 分析网页

2. 爬虫代码


概述

爬取hao123上的所有音乐导航链接

准备

所需模块

  • re模块
  • requests模块

涉及知识点

  • python基础
  • requests模块基础
  • re模块基础

运行效果

控制台打印:

完成爬虫

1. 分析网页

打开hao123音乐导航,按F12分析网页

因此可以使用URL:http://www.hao123.com/music/wangzhi请求该网页的HTML源代码进行数据获取。

2. 爬虫代码

import re

import requests

# 音乐导航网址:http://www.hao123.com/music/wangzhi

# 请求头
header = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.81 Safari/537.36"
}
# 请求的URL
url = "http://www.hao123.com/music/wangzhi"
# 发送请求,获取响应
response = requests.get(url, headers=header).text
# 正则表达式:获取音乐导航链接URL
pat_music_url = r'<a href="(.*?)" title="" target="_blank" class="text-con">'
# 正则表达式:获取音乐导航名字
pat_music_name = r'<a href=".*?" title="" target="_blank" class="text-con">[\s\s]*?(.*?)[\s\s]*?</a>'
# 音乐导航URL列表
music_url_list = re.findall(pat_music_url, response.strip())
# 音乐导航名字列表
music_name_list = re.findall(pat_music_name, response)
# 循环遍历
if len(music_url_list) == len(music_name_list):
    for i in range(0, len(music_url_list)):
        print(music_name_list[i], ":", music_url_list[i])

运行代码结果如上所示,主要的难点就是使用正则表达式提取数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值