Python lxml库的简单介绍及基本使用讲解


Posted in Python onDecember 22, 2020

1.lxml库介绍

lxml是XML和HTML的解析器,其主要功能是解析和提取XML和HTML中的数据;lxml和正则一样,也是用C语言实现的,是一款高性能的python HTML、XML解析器,也可以利用XPath语法,来定位特定的元素及节点信息

HTML是超文本标记语言,主要用于显示数据,他的焦点是数据的外观
XML是可扩展标记语言,主要用于传输和存储数据,他的焦点是数据的内容

2.安装lxml方法

方法1:
在cmd运行窗口中输入:pip install lxml

Python lxml库的简单介绍及基本使用讲解

方法2:
在Pycharm中下载
File?Setting?Project?Project Interpreter?点击右上角的“+”—
第1步

Python lxml库的简单介绍及基本使用讲解

第2步

Python lxml库的简单介绍及基本使用讲解

第3步

Python lxml库的简单介绍及基本使用讲解

方法3:
进入这个网站进行下载:https://lxml.de/index.html

Python lxml库的简单介绍及基本使用讲解

3.基本使用

我们可以利用他解析HTML代码,并且在解析HTML代码的时候,如果HTML代码不规范或者不完整,lxml解析器会自动修复或补全代码,从而提高效率

实例1:
解析HTML代码块

#提取html中的数据
from lxml import etree

text = '''
<html>
    <div class="clearfix">
    <div class="nav_com">
     <ul>
       <li class="active"><a href="/" rel="external nofollow" >推荐</a></li>
       <li class=""><a href="/nav/python" rel="external nofollow" >Python</a></li>
       <li class=""><a href="/nav/java" rel="external nofollow" >Java</a></li>
       <li class=""><a href="/nav/web" rel="external nofollow" >前端</a></li>
       <li class=""><a href="/nav/arch" rel="external nofollow" >架构</a></li>
       <li class=""><a href="/nav/db" rel="external nofollow" >数据库</a></li>
       <li class=""><a href="/nav/5g" rel="external nofollow" >5G</a></li>
       <li class=""><a href="/nav/game" rel="external nofollow" >游戏开发</a></li>
       <li class=""><a href="/nav/mobile" rel="external nofollow" >移动开发</a></li>
       <li class=""><a href="/nav/ops" rel="external nofollow" >运维</a></li>
     </ul>
    </div>
    </div>
</html>>
</html>>

'''
#将字符串解析为html文档
html = etree.HTML(text)
#print(html)
#将字符串序列化为html
result = etree.tostring(html).decode('utf-8')
print(result)

实例2:
读取并解析html文件

#将html文件进行解析
from lxml import etree
#将html文件进行读取
html = etree.parse('data.html')
#将html内容序列化
result = etree.tostring(html).decode('utf-8')
print(result)

到此这篇关于Python lxml库的简单介绍及基本使用讲解的文章就介绍到这了,更多相关Python lxml库使用内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
独特的python循环语句
Nov 20 Python
请不要重复犯我在学习Python和Linux系统上的错误
Dec 12 Python
Python 出现错误TypeError: ‘NoneType’ object is not iterable解决办法
Jan 12 Python
Python脚本实现自动将数据库备份到 Dropbox
Feb 06 Python
python spyder中读取txt为图片的方法
Apr 27 Python
Python数据持久化shelve模块用法分析
Jun 29 Python
详解flask入门模板引擎
Jul 18 Python
Python如何爬取实时变化的WebSocket数据的方法
Mar 09 Python
Tensorflow中批量读取数据的案列分析及TFRecord文件的打包与读取
Jun 30 Python
pytorch 多分类问题,计算百分比操作
Jul 09 Python
详解Python3 定义一个跨越多行的字符串的多种方法
Sep 06 Python
如何通过python检查文件是否被占用
Dec 18 Python
Python中过滤字符串列表的方法
Dec 22 #Python
python中@property的作用和getter setter的解释
Dec 22 #Python
地图可视化神器kepler.gl python接口的使用方法
Dec 22 #Python
Python实现Word文档转换Markdown的示例
Dec 22 #Python
python爬虫利用selenium实现自动翻页爬取某鱼数据的思路详解
Dec 22 #Python
Django中ORM的基本使用教程
Dec 22 #Python
python通用数据库操作工具 pydbclib的使用简介
Dec 21 #Python
You might like
漫威DC御用漫画家去世 他的表情包曾走红网络
2020/04/09 欧美动漫
注意:php5.4删除了session_unregister函数
2013/08/05 PHP
php遍历数组的4种方法总结
2014/07/05 PHP
PHP实现清除wordpress里恶意代码
2015/10/21 PHP
3种php生成唯一id的方法
2015/11/23 PHP
PHP汉字转换拼音的函数代码
2015/12/30 PHP
CodeIgniter扩展核心类实例详解
2016/01/20 PHP
jQuery 入门讲解1
2009/04/15 Javascript
document.getElementById为空或不是对象的解决方法
2010/01/24 Javascript
js获取元素在浏览器中的绝对位置
2010/07/24 Javascript
ExtJs Excel导出并下载IIS服务器端遇到的问题
2011/09/16 Javascript
通过js简单实现将一个文本内容转译成加密文本
2013/10/22 Javascript
在JavaScript中正确引用bind方法的应用
2015/05/11 Javascript
javascript cookie的简单应用
2016/02/24 Javascript
【经典源码收藏】基于jQuery的项目常见函数封装集合
2016/06/07 Javascript
鼠标点击input,显示瞬间的边框颜色,对之修改与隐藏实例
2016/12/26 Javascript
移动端刮刮乐的实现方式(js+HTML5)
2017/03/23 Javascript
Rollup处理并打包JS文件项目实例代码
2018/05/31 Javascript
js中自定义react数据验证组件实例详解
2018/10/19 Javascript
vue h5移动端禁止缩放代码
2019/10/28 Javascript
vue监听滚动事件的方法
2020/12/21 Vue.js
python3+PyQt5 创建多线程网络应用-TCP客户端和TCP服务器实例
2019/06/17 Python
python 追踪except信息方式
2020/04/25 Python
不同浏览器对CSS3和HTML5的支持状况
2009/10/31 HTML / CSS
Schecker荷兰:狗狗用品和配件
2019/06/06 全球购物
Feelunique中文官网:欧洲最大化妆品零售电商
2020/07/10 全球购物
亚洲最大的运动鞋寄售店:KicksCrew
2020/11/26 全球购物
实习生自荐信范文分享
2013/11/27 职场文书
新入职员工的自我介绍演讲稿
2014/01/02 职场文书
经济贸易系毕业生求职信
2014/05/31 职场文书
廉政承诺书范文
2015/04/28 职场文书
致青春观后感
2015/06/09 职场文书
思想工作总结范文
2015/08/12 职场文书
小学校本教研总结
2015/08/13 职场文书
小学家庭教育心得体会
2016/01/14 职场文书
Centos7 Shell编程之正则表达式、文本处理工具详解
2022/08/05 Servers