BeautifulSoup应用
Beautiful Soup提供一些简单的、Python式的函数来处理导航、搜索、修改分析树等功能。它是一个工具箱,通过解析文档为用户提供需要抓取的数据,因为简单,所以不需要多少代码就可以写出一个完整的应用程序。它借助网页的结构和属性等特性来解析网页。有了它,我们不用再去写一些复杂的正则表达式,只需要简单的几条语句,就可以完成网页中某个元素的提取。Beautiful Soup就是Python的一个HTML或XML的解析库,可以用它来方便地从网页中提取数据。
Beautiful Soup自动将输入文档,转换为Unicode编码,将输出文档自动转换为UTF-8编码。
【使用步骤】
① 安装
#导入beautifulsoup4库
pip install beautifulsoup4
② 创建BeautifulSoup对象
#方法一、直接通过字符串的形式创建
#使用python标准库的HTML解析器
soup=bs(html.read(),"html.parser")#html.parser是解析器,也可是lxml
print(soup.prettify()) ------>输出soup对象的内容
#方法二、通过已有的文件来创建
soup=BeautifulSoup(open('/home/index.html'),features='html.parser')#html.parser是解析器,也可是lxml
③ 解析BeautifulSoup对象
BeautifulSoup将复杂的HTML文档转化为一个复杂的树形结构,每个节点都是Python对象,所有对象都可以归纳为4种:Tag、NavigableString、BeautifulSoup、Commrnt。
(1)BeautifulSoup:表示的是一个文档的全部内容。大部分时候,可以把它当作Tag对象,是一个特殊的Tag,因为BeautifulSoup对象并不是真正的HTML和XML,所以没有name和attribute属性。
(2)Tag:就是HTML中的标签
【语法】:BeautifulSoup对象名.标签名
可以利用soup加标签名轻松地获取这些标签的内容,其查找的是所有内容中的第一个符合要求的标签。
【举例】:
#抽取title标签
pri