BeautifulSoup简介

BeautifulSoup是一个基于HTML DOM的解析库,提供人性化的API。它支持CSS选择器和多种解析器。本文介绍了BeautifulSoup的四个主要对象:Tag、NavigableString、BeautifulSoup和Comment,并详细阐述了节点集合、特殊属性及搜索文档树的方法,如name参数、keyword参数和text参数的使用。

BeautifulSoup简介

介绍

lxml 只会局部遍历,而Beautiful Soup 是基于HTML DOM的,会载入整个文档,解析整个DOM树,因此时间和内存开销都会大很多,所以性能要低于lxml。

BeautifulSoup 用来解析 HTML 比较简单,API非常人性化,支持CSS选择器、Python标准库中的HTML解析器,也支持 lxml 的 XML解析器。
使用 pip 安装即可:pip install beautifulsoup4

bs四大对象

Beautiful Soup将复杂HTML文档转换成一个复杂的树形结构,每个节点都是Python对象,所有对象可以归纳为4种:

  • Tag
  • NavigableString
  • BeautifulSoup
  • Comment
  1. Tag
    Tag对应 HTML 中的一个个标签
    Tag,它有两个重要的属性,是 name 和 attrs
    name是标签名,attrs是标签的属性
    注意:BeautifulSoup直接调用Tag,只会获得Html中第一个相应的Tag数据

  2. NavigableString
    标签中的内容数据
    使用string属性获取该对象,例如:soup.p.string 获得bs中p标签的内容

  3. BeautifulSoup
    BeautifulSoup 对象表示的是一个文档的内容。大部分时候,可以把它当作 Tag 对象,是一个特殊的 Tag,与Tag有相同的 name,attrs属性

  4. Comment
    Comment 对象是一个特殊类型的 NavigableString 对象,其输出的内容不包括注释符号。
    实际就是如过内容中有注释符号,soup.p.st

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值