beautifulsoup模块

Posted 早起的鸟儿有虫吃

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了beautifulsoup模块相关的知识,希望对你有一定的参考价值。

一介绍

Beautiful Soup 是一个可以从html或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Beautiful Soup会帮你节省数小时甚至数天的工作时间.你可能在寻找 Beautiful Soup3 的文档,Beautiful Soup 3 目前已经停止开发,官网推荐在现在的项目中使用Beautiful Soup 4, 移植到BS4

#安装 Beautiful Soup
pip install beautifulsoup4

#安装解析器
Beautiful Soup支持Python标准库中的HTML解析器,还支持一些第三方的解析器,其中一个是 lxml .根据操作系统不同,可以选择下列方法来安装lxml:

$ apt-get install Python-lxml

$ easy_install lxml

$ pip install lxml

另一个可供选择的解析器是纯Python实现的 html5lib , html5lib的解析方式与浏览器相同,可以选择下列方法来安装html5lib:

$ apt-get install Python-html5lib

$ easy_install html5lib

$ pip install html5lib

Mac安装
python3.5 -m pip install beautifulsoup4

python3.5 -m pip install lxml

 

解析器使用方法优势劣势
Python标准库 BeautifulSoup(markup, "html.parser")
  • Python的内置标准库
  • 执行速度适中
  • 文档容错能力强
  • Python 2.7.3 or 3.2.2)前 的版本中文档容错能力差
lxml HTML 解析器 BeautifulSoup(markup, "lxml")
  • 速度快
  • 文档容错能力强
  • 需要安装C语言库
lxml XML 解析器

BeautifulSoup(markup, ["lxml", "xml"])

BeautifulSoup(markup, "xml")

  • 速度快
  • 唯一支持XML的解析器
  • 需要安装C语言库
html5lib BeautifulSoup(markup, "html5lib")
  • 最好的容错性
  • 以浏览器的方式解析文档
  • 生成HTML5格式的文档
  • 速度慢
  • 不依赖外部扩展

以上是关于beautifulsoup模块的主要内容,如果未能解决你的问题,请参考以下文章

Python爬虫之BeautifulSoup模块

requests和BeautifulSoup模块的使用

孤荷凌寒自学python第六十八天学习并实践beautifulsoup模块1

python 极好用的解析 html 标签的模块 - BeautifulSoup

爬虫—— BeautifulSoup模块获取元素

如何使用模块化代码片段中的LeakCanary检测内存泄漏?