python爬虫beautifulsoup findall函数详解

article/2025/10/14 5:14:35

测试网站:
http://www.pythonscraping.com/pages/warandpeace.html

内容初探
在这里插入图片描述

有一些奇怪的红绿分类

网页源码介入:
在这里插入图片描述

我们所要做的就是识别<>中的信息,然后提取它后面的内容

基础网络连接代码:

html = urlopen("http://www.pythonscraping.com/pages/warandpeace.html")
bsObj = BeautifulSoup(html)

短短两行,我们把它变成了“美味汤”的对象

findall函数:

findAll(tag, attributes, recursive, text, limit, keywords)

接下来看一些实际需求:

** 需求1:**找出所有绿色的字
分析:那显然对应的就是tag为span,然后attr为class=‘green’
因此,代码为:

nameList = bsObj.findAll("span", {"class":"green"})
for name in nameList:#print(name)print(name.get_text())

用get_text()去除烦人的<>
结果为:
在这里插入图片描述
得到各种人名

** 需求2**:根据内容text搜索,用limit限制前n个

# text 搜索
nameList = bsObj.findAll(text = "the prince", limit = 2)
print(nameList)

返回结果:
在这里插入图片描述
哈哈,这个没啥意思,因为找出来的只能是the prince,主要试试功能而已

** 需求3:**根据keyword搜索
在这里插入图片描述
所谓的keyword我理解就是attr吧,我们可以看一个例子:

# keyword搜索
allText = bsObj.findAll(id="text")
print(allText[0].get_text())# class 是关键字,要加_
allText = bsObj.findAll(class_="green")
print(allText[0].get_text())

这里的class由于是关键字,所有要加_,实际上keyword确实等价于attr搜索:
在这里插入图片描述

总结:
好啦,今天就初步介绍了一下findall,希望后续可以坚持学习


http://chatgpt.dhexx.cn/article/22hHR4qW.shtml

相关文章

正则表达式入门-findall()函数

正则表达式入门-findall()函数 findall()函数 例子 import re a 123abc rere.findall(\d\d\d,a) print(re)导入用于完成正则表达式操作的re库 使用re库中的findall()函数提取文本 \d表示匹配1个数字&#xff0c;那么\d\d\d就表示匹配连续的3个数字 语法为 re.findall(匹…

38 匹配字符串——findall()方法

文章目录 语法案例 语法 findall()方法用于在整个字符串中搜索所有符合正则表达式的字符串&#xff0c;并以列表的形式返回。如果匹配成功&#xff0c;则返回包含匹配结构的列表&#xff0c;否则返回空列表。findall()方法的语法格式如下&#xff1a; re.findall(pattern, st…

Qt QLabel样式表总结

先来个例子 QLabel {font-family: "Microsoft YaHei";font-size: 14px;color: #BDC8E2;background-color: #2E3648; }效果 上面的例子是基本的样式设置&#xff0c;下面我们将探讨 QLable 各种样式设置&#xff1a; 字体样式 font-family: "Microsoft YaHe…

QT QLabel中字体行间距怎么设置?

方式一&#xff1a;<br>可以达到换行的效果&#xff0c;但是行间距太小了&#xff0c;两个<br>又太大了&#xff0c;这种方法并不可控。 m_titleLabel->setText("<font style font-size:19px; color:#ffff00;font-weight:bold> 客户端界面 </font…

重写QLabel实现图片显示框选截取保存

之前写过用重写QGraphicsItem的方式来实现图片显示&#xff0c;框选&#xff0c;保存的代码&#xff0c;这次通过重写QLabel的方式来实现。 主要重写QLabel的代码如下&#xff1a; mylabel.h #ifndef MYLABEL_H #define MYLABEL_H#include <QObject> #include <QWidg…

QLabel 标签

QLabel 标签 QLabel 是 PyQt6 里用来建立文字或图片的标签控件&#xff0c;这篇教学会介绍如何在 PyQt6 窗口里加入 QLabel 标签&#xff0c;并进行像是文字字型、大小、颜色和位置...等参数设定。 快速预览&#xff1a; 加入 QLabel 标签 QLabel 位置设定 QLabel 文字设定 …

QLabel的使用

QLabel介绍 QLabel 是 Qt 框架中的一个控件类&#xff0c;用于显示文本或图像。它可以在窗口或其他容器中显示静态文本&#xff0c;并且可以根据需要设置格式、对齐方式和尺寸。 主要作用如下&#xff1a; 显示文本内容&#xff1a;QLabel 可以显示文字内容&#xff0c;可以…

QLabel显示图像

QLabel显示图像 通常用QLabel显示图像&#xff0c;QLabel类有setPixmap()函数&#xff0c;可以用来显示图像。也可以直接用QPainter画出图像。 如果图像过大&#xff0c;直接用QLabel显示&#xff0c;将会出现有部分图像显示不出来&#xff0c;这时可以用Scroll Area部件。方…

QLabel绘制滚动文本

实现思路 绘制滚动文本是个很简单的事&#xff0c;只需要用定时器累计一个文本坐标偏移量&#xff0c;然后 update &#xff0c;在 paintEvent 里把文本画出来。 Qt 定时刷新可以用&#xff08;可能还有其他方式&#xff09;&#xff1a; QObject的startTimer配合paintEvent&…

PyQt5 QLabel控件

PyQt5 QLabel控件 QLabel常用方法显示动画超链接 QLabel常用信号 QLabel 就是常见的标签&#xff0c;可以用来显示文字&#xff08;包括纯文本和富文本)&#xff0c;图片及动画。 QLabel常用方法 方法描述margin保存 QLabel 控件中内容与边框之间的距离&#xff08;边距&#…

Qt QLabel详解

一、QLabel常用方法 1. QLabel设置文本内容 ui.label->setText(QStringLiteral("测试中文\n"));2. QLabel设置颜色 通过设计器里面的改变样式进行设置&#xff1a;同时可以设置字体、文本对齐方式、背景图片 color: rgb(255, 85, 0); background-color: rgb(8…

Qt之QLabel(属性 显示图片 显示动图 显示富文本信息 信号)

QLabel可以说是Qt中最常见的控件之一&#xff0c;主要用来显示文本文字、显示图片、显示gif动图、显示富文本信息。本文将从以下几个方面对QLabel进行介绍: [1]显示及获取文本文字 [2]显示图片 [3]显示动图 [4]显示富文本信息 [5]常用属性设置 [6]信号事件 至于样式表(Q…

Qt扫盲-QLabel使用总结

QLabel使用总结 一、QLabel 显示内容二、注意事项1. 格式注意2. 不保留先前状态3. 格式对齐4. 伙伴焦点 三、信号和槽函数使用1. 信号2. 槽函数 总结&#xff1a; QLabel 其实就是一个用来只读显示的简易控件。适合数据量很小的内容显示。 QLabel用于显示 文本或图像。 不提供…

QT常用控件——QLabel标签控件

操作系统: 统信UOSv20 Qt版本: 5.11.3 一&#xff0c;简单介绍 QLabel用于显示文本或图像&#xff0c;不提供用户交互功能&#xff0c;标签的视觉外观可以以各种方式配置。 项目内容HeaderQLabelqmakeQT widgetsInheritsQFrame 二&#xff0c;常用方法 1. 常用方法 方法…

JavaScript 弹出对话框3种方式

js 弹出对话框3种方式对话框有三种 1&#xff1a;只是提醒&#xff0c;不能对脚本产生任何改变&#xff1b; 2&#xff1a;一般用于确认&#xff0c;返回 true 或者 false &#xff0c;所以可以轻松用于 if...else...判断 3&#xff1a;一个带输入的对话框&#xff0c;可以返回…

js的弹出框

js的弹出框包括三种&#xff1a;alert、confirm、prompt 1 alert() alert()方法有一个参数&#xff0c;就是用户想弹出的内容&#xff0c;弹出框很简单&#xff0c;就一个显示功能&#xff0c;你可以点击确认关闭这个弹出框。 例如&#xff1a; alert("hello world&…

JavaScript弹出对话框的三种方法

三种方法 alert(); 最简单&#xff0c;将alert();括号内的内容弹出。 confirm(); 与alert();类似&#xff0c;包含确认和取消按钮&#xff0c;点击确定confirm();方法会返回true&#xff0c;点击取消confirm();方法会返回false&#xff1b; prompt(); 与confirm();方法…

JavaScript弹出框

提到弹出框&#xff0c;首先想到的alert()了&#xff0c;其次想到的也还是alert&#xff08;&#xff09;&#xff0c;其实在js中有三种弹出框&#xff0c;下面我们一一说明。 1&#xff0c;仅确定。 即&#xff1a;对话框界面上只有确定按钮。该功能可以使用alert&#xff08;…

JS弹出对话框的三种方式

javascript的三种对话框是通过调用window对象的三个方法alert()&#xff0c;confirm()和prompt()来获得&#xff0c;可以利用这些对话框来完成js的输入和输出&#xff0c;实现与用户能进行交互的js代码。 第一种&#xff1a;alert()方法 alert()方法是这三种对话框中最容易使用…

JavaScript弹出对话框的三种方式-alert()-confirm()-prompt()

一、alert()警告框&#xff08;确定&#xff09; alert()方法是显示一条弹出提示消息和确认按钮的警告框。 需要注意的是 &#xff1a; alert()是一个阻塞的函数&#xff0c;如果不点确认按钮&#xff0c;后面的内容就不会加载出来。 使用方式&#xff1a; alert(“想要提示的文…