python网络爬虫与信息提取-02-beautifulsoup

什么是BeautifulSoup?

Beautiful Soup是用Python写的一个HTML/XML的解析器,它可以很好的处理
不规范标记并生成剖析树(parse tree)。 它提供简单又常用的导航(navigating),
搜索以及修改剖析树的操作。它可以大大节省你的编程时间。
(摘自百度文库)
python网络爬虫与信息提取-02-beautifulsoup
python网络爬虫与信息提取-02-beautifulsoup

HTML节点树

在HTML中,所有标签定义的内容都是节点:
●整个文档是一个文档节点
每个HTML元素是元素节点
●HTML元素内的文本是文本节点
●每个HTML属性是属性节点
●注释是注释节点
这些节点构成了一个HTML节点树,节点树中的节点彼此拥有层级关系,我们常用父节点、子节点、兄弟节点来描述节点之间的关系
父节点拥有子节点,同级的子节点被称为兄弟节点,每个节点都有父节点,同时可拥有任意数量的子节点或兄弟节点
(摘自:https://www.cnblogs.com/pzk7788/p/10530042.html)

beautifulsoup类的基本元素

Tag:标签最基本的信息组织单元,分别用<>和</>标明开头和结尾

  • Name:标签的名字
  • <p> ... </p>的名字是’p’,格式:.name
  • Attributes:标签的属性,字典形式组织,格式:.attrs
  • NavigableString:标签内非属性字符串,<>…</>中文字符串,格式:.string
  • Comment:标签内字符串的注释部分,一种特殊的Comment类型

python网络爬虫与信息提取-02-beautifulsoup

HTML基本格式

python网络爬虫与信息提取-02-beautifulsoup
python网络爬虫与信息提取-02-beautifulsoup

标签树的下行遍历

python网络爬虫与信息提取-02-beautifulsoup

标签树的上行遍历

python网络爬虫与信息提取-02-beautifulsoup

标签树的平行遍历

python网络爬虫与信息提取-02-beautifulsoup