lxml 笔记

参考教程 http://c.biancheng.net/python_spider/lxml.html

一 安装

1.pip 安装

c:\>pip3 install lxml

二 lxml功能介绍

1.ElementTree 和 Element

1.0 提前总结

类型说明
ElementTree代表着xml html的整个文档
1.文档
2.root
3.文档其他结构
Element一个元素
生成节点函数名功能
etree.XML(字符串,parser=etree.XMLParser())生成element对象
etree.HTML(字符串,parser=etree.HTMLParser())生成element对象
1.校正格式,封闭标签
2.一步就生成到顶部的html标签

生成tree
tree.getroot() 可以得到根节点

产生tree的方法
1.tree = etree.ElementTree(root)
2.tree = etree.parse(filename)

1.1 XML:从字符串str ->新建节点 Element -> 并作为root节点生成树ElementTree

使用etree.XML(’ str ') 产生xml对象

import lxml.etree as etree

#1. 新建root节点 Element类型  
root = etree.XML('''  # XML用来生成节点
        <root>
        <a>aaa</a>
        </root>
        ''')
        
#2. 从节点新建ElementTree = 文档(文档说明 + root )
tree = etree.ElementTree(root)
print('root',type(root),'\n',root)
print('tree',type(tree),'\n',tree)

#3. 结果 
root <class 'lxml.etree._Element'> 
<Element root at 0x2e99cfdcf08>
tree <class 'lxml.etree._ElementTree'> 
<lxml.etree._ElementTree object at 0x000002E99CF6AD48>

1.2 HTML:从字符串str ->新建Element (直接到标签)

import lxml.etree as etree

html_str = '''   #字符串str
        <div>
        <a>aaa</a>
        </div>
        '''
# 1. 字符串str -> html节点 (直接到<html>标签)
html = etree.HTML(html_str,parser=etree.HTMLParser())  

# 2. etree.tostring(对象,encode='utf-8') 转为utf-8字符串
strRes = etree.tostring(html,encoding='utf-8')
print(strRes.decode('utf-8'))
 

# 结果
<html>
	<body><div>
        <a>aaa</a>
    </div></body>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值