BeautifulSoup是Python的一个库,最主要的功能就是从网页爬取我们需要的数据。BeautifulSoup将html解析为对象进行处理,全部页面转变为字典或者数组,相对于正则表达式的方式,可以大大简化处理过程。
0x01 安装
建议安装BeautifulSoup 4版本 利用pip进行安装:
pip install beautifulsoup4
BeautifulSoup默认支持Python的标准HTML解析库,但是它也支持一些第三方的解析库:
序号 | 解析库 | 使用方法 | 优势 | 劣势 |
---|---|---|---|---|
1 | Python标准库 | BeautifulSoup(html,’html.parser’) | Python内置标准库;执行速度快 | 容错能力较差 |
2 | lxml HTML解析库 | BeautifulSoup(html,’lxml’) | 速度快;容错能力强 | 需要安装,需要C语言库 |
3 | lxml XML解析库 | BeautifulSoup(html,[‘lxml’,’xml’]) | 速度快;容错能力强;支持XML格式 | 需要C语言库 |
4 | htm5lib解析库 | BeautifulSoup(html,’htm5llib’) | 以浏览器方式解析,最好的容错性 | 速度慢 |
0x02 创建对象
导入库:
from bs4 import BeautifulSoup
创建实例:
url='http://www.baidu.com'
resp=urllib2.urlopen(url)
html=resp.read()
创建对象:
bs=BeautifulSoup(html)
格式化输出内容:
print bs.prettify()
0x03 对象种类
BeautifulSoup将复杂的html文档转换为树形结构,每一个节点都是一个对象ÿ