其他教程

其他教程

Products

当前位置:首页 > 其他教程 >

python在正则表达式中如何提取a标签中的内容?

GG网络技术分享 2025-03-18 16:14 2


问题描述:

<li data-view=\"5\"><a href=\"/5.mp3\" singer=\"陈慧琳\">记事本</a></li>

需要提取出歌手名和歌名,

歌手名我通过<a href=\\\"/.*?.mp3\\\" singer=\\\"(.*?)\\\">提取了出来

但是歌名该如何去提取呢?

网友观点:

用正则,然后获取对应组。

#encoding=utf-8

import re

data = \'<a href=\\\"/5.mp3\\\" singer=\\\"陈慧琳\\\">记事本</a>\'

regex = \'<a.*?singer=\\\"(.*?)\\\">(.*?)</a>\'

print(re.match(regex,data,re.DOTALL).groups())

1楼正解,没毛病

为什么要用正则呢,用beautifulsoap模块可以直接把标签读为对象操作

11《Python 原生爬虫教程》使用正则表达式进行页面提取

上节课我们学习了如何使用 BeautifulSoup 来解析页面,这节课我们来学习下如何使用正则来解析页面。

  • 正则表达式的基本概念
  • 正则表达式基本语法
  • 正则表达式常用函数

通过学习正则表达式几个常用函数,可以根据需要对数据进行匹配筛选。


1. 正则表达式简介

在编写爬虫的过程中,我们需要解析网页的内容。那么作为文本解析利器的正则表达式当然可以运用到我们的爬虫开发中。其实页面解析过程无非是从海量的字符串中将我们所需要的数据匹配并剥离出来,所以在正式的爬虫开发中正则会经常被用到。

正则表达式是对字符串操作的逻辑公式。在提取网页的数据的时候,我们需要把源代码转换成字符串,然后通过正则表达式匹配想要的数据。

在我们开始使用正则表达式进行模式查找之前,我们需要先熟悉一下正则表达式里面的字符的基本含义,熟悉了它们之后,我们就可以很方便的书写一些正则表达式进行模式匹配了。


2. 正则表达式基本语法

正则表达式的字符和含义

3. 正则表达式的常用方法

我们开发爬虫使用的是 Python 语言,那么在 Python 中如何使用正则表达式呢?在 Python 中已经内置了正则表达式模块 rere 库是内置在 Python 中的,不需要我们进行安装,直接导入使用即可。

这里我们主要详细讲解一下 re 库中的几种常用方法。这几种方法也是会经常用在爬虫开发中的,只要掌握了这些种方法,基本上在爬虫开发中需要使用正则表达式的问题都可以解决。


3.1 re.findall

findall 方法是找到所有的符合规则的匹配内容,具体语法如下:

标签:

提交需求或反馈

Demand feedback