欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

BeautifulSoup中各种html解析器的比较及使用_html/css_WEB-ITnose

程序员文章站 2022-05-05 21:37:58
...

Beautiful Soup解析器比较

·Beautiful Soup支持各种html解析器,包括python自带的标准库,还有其他的许多第三方库模块。其中一个就是lxml parser,至于lxml parser的安装,可以通过以下方法安装:

1)easy_install lxml 2)pip install lxml

另外,python对于模块的安装,可以查看博客说明,分为两种:easy_install 和 pip.

另外一种纯python解析器为html5lib解析器,可以像web浏览器那样解析html页面,你可以通过下面两种方式安装html5lib:

1)easy_install html5lib 2)pip install html5lib

下面对各种html解析器的优缺点做一下对比:


解析器 使用方法 优点 缺点
Python’s html.parser BeautifulSoup(markup,"html.parser")
  • python自身带有
  • 速度比较快
  • 能较好兼容 (as of Python 2.7.3 and 3.2.)
  • 不能很好地兼容(before Python 2.7.3 or 3.2.2)
    lxml’s HTML parser BeautifulSoup(markup,"lxml")
  • 速度很快
  • 兼容性好
  • External C dependency
    lxml’s XML parser BeautifulSoup(markup, "lxml-xml") BeautifulSoup(markup,"xml") 速度很快
  • The only currently supported XML parser
  • External C dependency
    html5lib BeautifulSoup(markup, "html5lib") 1)兼容性很好
    2)可以像web浏览器一样解析html页面
    3) Creates valid HTML5
  • 速度很慢
  • External Python dependency

  • 如果你想追求速度的话,建议使用 lxml,如果你使用的python版本2.x是2.7.3之前的版本,或者python3.x的是3.2.2之前的版本,你很有必要安装使用 html5lib或lxml使用,因为python内建的html解析器不能很好地适应于这些老版本。



    版权声明:本文为博主原创文章,未经博主允许不得转载。