提取数据处理02---结构化数据处理03(XML 文件、lxml库的基本使用)

XML 文件

处理方法

  • XPath
  • 正则表达式
  • 转化成Python类型(xmltodict)
  • CSS选择器

lxml库

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

  • 我们只要使用lxml库中的etree库进行解析HTML

解析html字符串(关键词: etree.HTML)

etree.HTML(Data)

案例演示

from lxml import etree
text = """
<div class="form-group">
	<div class="input-group">
		<input type="text" name="" class="form-control">
		<span class="input-group-btn">
			<button class="btn btn-default">
				<span class="glyphicon glyphicon-search"></span>
			</button>
		</span>
	</div>
</div>
"""
#利用etree.HTML,将字符串解析为HTML文档
html = etree.HTML(text)
print(html)

在这里插入图片描述

按字符串序列化HTML文档

只有序列化后才能显示
etree.tostring(Data)

# 按字符串序列化HTML文档
result = etree.tostring(html)

print(result)

在这里插入图片描述

注意:

lxml 可以自动修正 html 代码,会对缺少的标签自动补全

解析html文件(关键词:etree.parse)

etree.parse(Data)

# lxml_parse.py

from lxml import etree

# 读取外部文件 hello.html
html = etree.parse('./hello.html')
result = etree.tostring(html, pretty_print=True)

print(result)

Xpath的使用

html.xpath(“匹配语法”)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值