BeautifulSoup基本使用

 我来答
温屿17
2022-06-28 · TA获得超过1.3万个赞
知道小有建树答主
回答量:827
采纳率:0%
帮助的人:104万
展开全部

BeautifulSoup 官方文档 介绍:BeautifulSoup 是一个可以从HTML或XML文件中提取数据的Python库。使用BeautifulSoup更多方便,避免使用正则表达式容易出错,提高效率。

BeautifulSoup支持Python标准库中的HTML解析器,还支持一些第三方的解析器,其中一个是 lxml。以下为BeautifulSoup官方文档对支持的解析器优缺点对比。

推荐使用lxml解释器,效率更高。 注意:不同的解析器返回不同的结果

通过解析器,BeautifulSoup可以传入一段字符串或文件。

Beautiful Soup将复杂HTML文档转换成一个复杂的树形结构,每个节点都是Python对象,所有对象可以归纳为4种: Tag , NavigableString , BeautifulSoup , Comment 。接下来使用以下文档进行说明。

可以看到a点只是返回第一个,如果需要历遍全部则需要用find_all('a')。
tag有多种属性,其中两个最重要的就是name和attributes。name一般返回标签本身(soup返回document), 注意,tag属性操作方法和字典一样。

上面说到节点选择可以直接利用标签,如<head>标签用soup.head,也可通过name和attrs可以直接获取属性,操作和字典一样。以上是直接获取的方式,当想要获取标签的子节点、父节点、兄弟节点则需要通过另外的方法。

.children 是一个llist生成器,可以对子节点进行历遍循环

.descendants 是返回所有子孙节点,比较children和descendants的输出区别

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式