lxml库:

lxml是一个HTML/XML解析器,主要的功能是如何解析和提取 HTML/XML 数据。

lxml和正则一样,也是用 C 实现的,是一款高性能的 Python HTML/XML 解析器,我们可以利用之前学习的XPath语法,来快速的定位特定元素以及节点信息。

lxml python 官方文档:http://lxml.de/index.html

需要安装C语言库,可使用 pip 安装:pip install lxml

基本使用:

使用ixml库中的etree模块解析HTML代码,在解析HTML代码的时候,如果HTML代码不规范,他会自动的进行补全。

如果出现下图的错误,可以在代码之前加上# coding=gbk

从文件中读取html代码:

lxml还支持直接从文件中读取内容

注意:parse不会自动补全残缺的HTML模块

当直接使用parse处理文件的时候,会出现不规范的HTML,会报错,如下图

这时候可以通过HTMLParser方法建立HTML解析器来避免错误,如下代码所示: