先看一段BeautifulSoup的官方介绍:
Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Beautiful Soup会帮你节省数小时甚至数天的工作时间。
使用BeautifulSoup解析这段代码,能够得到一个 BeautifulSoup 的对象,
from bs4 import BeautifulSoup
soup = BeautifulSoup(html, 'lxml')
这个soup就是BeautifulSoup对象。
四种解析器
Python标准库 :
BeautifulSoup(markup, "html.parser")
lxmlHTML解析器 :
BeautifulSoup(markup, "lxml")
lxmlXML解析器 :
BeautifulSoup(markup, ["lxml-xml"])/BeautifulSoup(markup, "xml")
html5lib :
BeautifulSoup(markup, "html5lib")
对象的种类
Beautiful Soup将复杂HTML文档转换成一个复杂的树形结构,每个节点都是Python对象,
所有对象可以归纳为4种: Tag , NavigableString , BeautifulSoup , Comment .