beautifulsoup_Beautiful Soup 库(知识点总结)

87ace8f9605fdbe30771fb55ef78121a.png

欢迎来到子奇的小屋


一起来看看Beautiful Soup 库的用法吧 !

原文链接​mp.weixin.qq.com

Beautiful Soup库的理解

  • 平时我们都要浏览网页,我们知道,网页信息即存储在web服务器网站中的文件夹数据,数据以二进制的形式存储在HTML中,HTML可以看成是用标签封装的“标签树”。
  • Beautiful Soup库便是解析、遍历、维护“标签树”的功能库。

Beautiful Soup库的引用

  • Beautiful Soup库,也叫beautifulsoup4或 bs4约定引用方式如下:
  • from bs4 import BeautifulSoup
  • import bs4
  • BeautifulSoup 对应一个HTML/XML文档的全部内容

Beautiful Soup库解析器

  • soup = BeautifulSoup('data','html.parser')

解析器使用方法条件bs4的HTML解析器BeautifulSoup(mk,'html.parser')安装bs4库lxml的HTML解析器BeautifulSoup(mk,'lxml')pip install lxmllxml的XML解析器BeautifulSoup(mk,'xml')pip install lxmlhtml5lib的解析器BeautifulSoup(mk,'html5lib')pip install html5libBeautifulSoup类的基本元素

  • Tag 标签
  • 最基本的信息组织单元,分别用<>和</> 标明开头和结尾
  • 任何存在于HTML语法中的标签都可以用soup.<tag>访问获得 ,当HTML文档中存在多个相同对应内容时,soup.<tag>返回第一个
  • Tag的name
  • 标签的名字,<p>...</p>的名字是'p',格式:<tag>.name
  • 每个<tag>都有自己的名字,通过<tag>.name获取,字符串类型
  • Tag的attrs(属性)
  • 标签的属性,字典形式组织,格式:<tag>.attrs
  • 一个<tag>可以有0或多个属性,字典类型
  • Tag的NavigableString
  • 标签内非属性字符串,<>…</>中字符串,格式:<tag>.string
  • NavigableString可以跨越多个层次
  • Tag的Comment
  • 标签内字符串的注释部分,一种特殊的Comment类型
  • Comment是一种特殊类型

基于bs4库的HTML内容遍历方法

  • 下行遍历

属性说明.contents子节点的列表,将<tag>所有儿子节点存入列表.children 子节点的迭代类型,与.contents类似,用于循环遍历儿子节点.descendants 子孙节点的迭代类型,包含所有子孙节点,用于循环遍历

BeautifulSoup类型是标签树的根节点

  • 上行遍历

属性说明.parent 节点的父亲标签.parents 节点先辈标签的迭代类型,用于循环遍历先辈节点

  • 平行遍历

属性 说明.next_sibling返回按照HTML文本顺序的下一个平行节点标签.previous_sibling 返回按照HTML文本顺序的上一个平行节点标签.next_siblings迭代类型,返回按照HTML文本顺序的后续所有平行节点标签 .previous_siblings迭代类型,返回按照HTML文本顺序的前续所有平行节点标签基于bs4库的HTML格式输出

  • bs4库的prettify()方法
  • .prettify()为HTML文本<>及其内容增加
  • .prettify()可用于标签,方法:<tag>.prettify()'n'
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值