Beautiful Soup的用法(六):解析器的选择

html 进行解析时,Beautiful Soup 支持解析器的选取,通常来说在选择解析器的时候需要记住两个点,一个是解析时间,另一个是兼容性。

Beautiful Soup 支持的解析器有四种:

html.parserlxmllxml-xmlhtml5lib

这四种解析器的优点和缺点,文档中下面的表很容易看清:

解析器 使用方法 优势 劣势
Python标准库 BeautifulSoup(markup,“html.parser”) 1 Python的内置标准库
2 执行速度适中
3 文档容错能力强
Python 2.7.3 or 3.2.2)前 的版本中文档容错能力差
lxml HTML 解析器 BeautifulSoup(markup,“lxml”) 1.速度快
2.文档容错能力强
需要安装C语言库
lxml XML 解析器 BeautifulSoup(markup,[“lxml-xml”]) 1.速度快
2.唯一支持XML的解析器
需要安装C语言库
html5lib BeautifulSoup(markup,“html5lib”) 1 最好的容错性
2以浏览器的方式解析文档
3生成HTML5格式的文档
1.速度慢
2.不依赖外部扩展

BeautifulSoup 4.0以前,大部分使用的是html.parser ,现在更多使用的是lxml

这些解析器,在安装BeautifulSoup 的时候就自带安装,如果发现未安装,可以使用pip或者easy_install进行安装。

pip  install  lxml
pip  install  html5lib

你可能感兴趣的:(Beautiful,Soup的用法,Beautiful,Soup)