一、认识xpath和xml数据
lxml是Python基于xpath做数据解析的工具
from lxml import etree
1.xpath数据解析 - 通过提供标签路径来获取标签(xpath指的就是标签的路径)
1) xpath基本感念
树: 整个html内容或者整个xml内容
节点:树结构中的每个标签(元素)就是一个节点
根节点:树结构中的第一个节点就是根节点(网页对应树的根节点是html标签)
节点内容:双标签的标签内容
节点属性:标签的标签属性
2) 路径 - 目标节点在整个树结构中的位置信息
2.xml数据格式
xml和json都是通用的数据格式,可以用于不同编程语言的程序之间进行数据交流。
json更小更快;xml更安全
用json和xml两种数据格式来传输一个班级的信息:
1)json
{
“name”: “goodstudy”,
“teacher”: {
“name”: “niuzi”,
“tel”: “1100”,
“age”: 18
},
“students”:[
{“name”: “小明”, “age”: 18, “tel”: “120”, “gender”: “男”},
{“name”: “张三”, “age”: 22, “tel”: “119”, “gender”: “女”},
{“name”: “老王”, “age”: 30, “tel”: “140”, “gender”: “男”}
]
}
2)xml
niuzi
1100
18
二、xpath语法
在说明这个语法前
现在当前目录建一个xml文件
data.xml文件内容如下
<supermarket>
<name>永辉超市</name>
<staffs>
<staff>
<name class="c1">张三</name>
<position>收营员</position>
<salary>3500</salary>
</staff>
<staff>
<name>小明</name>
<position class="c1">收营员</position>
<salary>3800</salary>
</staff>
<staff>
<name class="c1">小花</name>