python爬虫Xpath的安装和语法

Xpath:
安装lxml库:
pip install lxml
导包:
from lxml import ertee
etree.parse() 注:html_tree = etree.parse(‘XX.html’) 解析本地HTML文件
etree.HTML() 注:html_tree = etree.HTML(response.read().decode(‘utf-8’)) 解析网络的HTML字符串
html_tree.xpath() 注:使用xpath路径查询信息,返回的是一个列表
xpath是返回的一个列表,取的时候按照下标去取
在xpath中,有七中类型的节点:元素、属性、文本、命名空间、处理指令、注释、文档(根)节点
xpath是一门在xml文档中查找信息的语言。xpath用于在xml文档中通过元素和属性进行导航
节点:一个标签就是一个节点
父(parent)节点:
body标签就是b标签的父节点
子(children)节点:
b标签就是body标签的子节点
同胞(sibling)节点:
b标签和p标签就是同胞节点


先辈(ancestor)节点:
某节点的父、父的父、等等
后代(descendant)节点:
某节点的子、子的子、等等
选取节点的方式:
路径查询:
/ 总根节点选取
// 从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置
. 选取当前节点
属性查询:
@ 选取属性
逻辑运算:
//div[@id=‘head’ and @class=‘s_down’] 表示class=s_down并且id=head
//title | //price 表示title或者price标签
模糊查询:
contains://div[contains(@class, “属性名称”)] 注:包含属性名称的class都取出来
start-with://div[start-with(@id, ‘属性名称’)] 注:id的属性是以属性名称开头的都取出来
end-with://div[end-with(@id, ‘属性名称’)] 注:id的属性是以属性名称结尾的都取出来
内容查询:
text()?/div[@class=“content”]/div/p/text() 注:取出来的是它里面的内容

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值