目錄
Beautiful Soup解析器比较
首頁 web前端 html教學 BeautifulSoup中各种html解析器的比较及使用_html/css_WEB-ITnose

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

Jun 24, 2016 am 11:38 AM

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解析器不能很好地适应于这些老版本。



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

    本網站聲明
    本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

    熱AI工具

    Undresser.AI Undress

    Undresser.AI Undress

    人工智慧驅動的應用程序,用於創建逼真的裸體照片

    AI Clothes Remover

    AI Clothes Remover

    用於從照片中去除衣服的線上人工智慧工具。

    Undress AI Tool

    Undress AI Tool

    免費脫衣圖片

    Clothoff.io

    Clothoff.io

    AI脫衣器

    AI Hentai Generator

    AI Hentai Generator

    免費產生 AI 無盡。

    熱門文章

    R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
    2 週前 By 尊渡假赌尊渡假赌尊渡假赌
    倉庫:如何復興隊友
    4 週前 By 尊渡假赌尊渡假赌尊渡假赌
    Hello Kitty Island冒險:如何獲得巨型種子
    3 週前 By 尊渡假赌尊渡假赌尊渡假赌

    熱工具

    記事本++7.3.1

    記事本++7.3.1

    好用且免費的程式碼編輯器

    SublimeText3漢化版

    SublimeText3漢化版

    中文版,非常好用

    禪工作室 13.0.1

    禪工作室 13.0.1

    強大的PHP整合開發環境

    Dreamweaver CS6

    Dreamweaver CS6

    視覺化網頁開發工具

    SublimeText3 Mac版

    SublimeText3 Mac版

    神級程式碼編輯軟體(SublimeText3)

    公眾號網頁更新緩存難題:如何避免版本更新後舊緩存影響用戶體驗? 公眾號網頁更新緩存難題:如何避免版本更新後舊緩存影響用戶體驗? Mar 04, 2025 pm 12:32 PM

    公眾號網頁更新緩存難題:如何避免版本更新後舊緩存影響用戶體驗?

    如何使用HTML5表單驗證屬性來驗證用戶輸入? 如何使用HTML5表單驗證屬性來驗證用戶輸入? Mar 17, 2025 pm 12:27 PM

    如何使用HTML5表單驗證屬性來驗證用戶輸入?

    如何高效地在網頁中為PNG圖片添加描邊效果? 如何高效地在網頁中為PNG圖片添加描邊效果? Mar 04, 2025 pm 02:39 PM

    如何高效地在網頁中為PNG圖片添加描邊效果?

    HTML5中跨瀏覽器兼容性的最佳實踐是什麼? HTML5中跨瀏覽器兼容性的最佳實踐是什麼? Mar 17, 2025 pm 12:20 PM

    HTML5中跨瀏覽器兼容性的最佳實踐是什麼?

    < datalist>的目的是什麼。 元素? < datalist>的目的是什麼。 元素? Mar 21, 2025 pm 12:33 PM

    < datalist>的目的是什麼。 元素?

    我如何使用html5< time> 元素以語義表示日期和時間? 我如何使用html5< time> 元素以語義表示日期和時間? Mar 12, 2025 pm 04:05 PM

    我如何使用html5< time> 元素以語義表示日期和時間?

    > gt;的目的是什麼 元素? > gt;的目的是什麼 元素? Mar 21, 2025 pm 12:34 PM

    > gt;的目的是什麼 元素?

    < meter>的目的是什麼。 元素? < meter>的目的是什麼。 元素? Mar 21, 2025 pm 12:35 PM

    < meter>的目的是什麼。 元素?

    See all articles