文章目录
写在前面
因为最近在中国大学MOOC网上学习嵩天老师(北京理工大学)的爬虫课程,所以为了方便自己以后编程时查找相关函数和方法,也为了方便各位小伙伴们学习,整理这篇关于爬虫中BeautifulSoup库的基本知识点。本篇涉及图的地方,我会截取课程内容的截图(因为我实在是懒得画图了),涉及表的地方我会重新制作,一是为了美观,二是为了加深印象,因为函数和方法太多不常用的话就会遗网。好了。话不多说,开干!
一、Beautiful Soup库入门
1.Beautifu Soup的安装
工欲善其事必先利其器,学习bs4库的第一步是安装他,很简单,首先我们win+R,输入cmd进入命令行,输入如下代码
pip install beautifulsoup4
敲下回车,只需等待片刻即可安装成功~
Beautiful Soup库的使用如下:
2.Beautifu Soup的基本元素
(1) Beautiful Soup库的理解
(2)Beautiful Soup类
Beautiful Soup类对应一个HTML/XML文档的全部内容
(3)Beautiful Soup库解析器
解析器 | 使用方法 | 条件 |
---|---|---|
bs4的HTML解析器 | BeautifulSoup(mk,‘html.parser’) | 安装bs4库 |
lxml的HTML解析器 | BeautifulSoup(mk,‘lxml’) | pip install lxml |
lxml的XML解析器 | BeautifulSoup(mk,‘xml’) | pip install lxml |
html5lib的解析器 | BeautifulSoup(mk,‘html5lib’) | pip install html5lib |
(4)Beautiful Soup库的基本元素
基本元素 | 说明 |
---|---|
Tag | 标签,最基本的信息组织单元,分别用<>和</>表明开头和结尾 |
Name | 标签的名字,的名字是’p’,格式:.name |
Attributes | 标签的属性,字典的组织形式,格式:.attrs |
NavigableString | 标签内非属性字符串,<>…</>中的字符串,格式:.string |
Comment | 标签内字符串的注释部分,一种特殊的Comment类型 |
3.基于bs4库的HTML内容遍历方法
(1)HTML基本格式
(2)标签树的下行遍历
属性 | 说明 |
---|---|
.contents | 子节点列表,将所有儿子节点存入列表 |
.children | 子节点的迭代类型,与.contents类似,用于循环遍历儿子节点 |
.descendants | 子孙节点的迭代类型,包含所有子孙节点,用于循环遍历 |