python网页爬虫xpath应用

本文介绍了Python中使用lxml库进行XPath数据解析的基础知识,包括XPath的基本概念、路径、语法以及如何通过XPath获取XML和HTML文档中的节点、内容和属性。详细讲解了绝对路径、相对路径、全路径、谓语条件、获取内容和属性的方法,并提供了实例演示。
摘要由CSDN通过智能技术生成

一、认识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>
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

喆子玩点数据

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值