pythonxpath语法_xpath语法
python爬去网页数据时,如果使用requests库和xpath,首先需要使用lxml的etree将获取的网页数据完整,因为有时候使用requests.get(url ,headers=headers)获取到的数据不完整。etree模块就可以自动修复html文本。
安装lxml:
lxml是python的一个解析库,支持html和xml的解析,同时也支持xpath解析方式。
pip install lxml
etree模块的使用
from lxml import etree
对网页HTML的解析,使用etree.HTML(html.content)
接下来就可以使用xpath抓取对应的需求节点的信息了。
xpath的语法
选取节点:
/: 表示选取直接子节点
xpath: /div
result: null
season: /div表示获取根节点下的div但是,根节点下只有 这一个子节点,/是不能获取到子孙节点的
//: 表示获取任意节点
谓语:
通过列子来说明
//book/div[1]
explanation: 获取book节点下的第一个div节点
注意: xpath语法的下标是从数字1开始的,这里和python的语法是有区别的
//book/div[last()]
explanation: 获取book节点的最后一个div节点
//book/div[positon()<3]
explanation: 获取book节点下的前两个div节点
//book/div[@price=1]
explanation: 获取book节点下属性price=1 的div节点
//book/div[contains(@class,"f")]
explanation: 获取book节点下class属性中包含f的div节点
通配符:
: 表示获取任意的节点
@:表示任意属性
多个路径:
| : //book[@price=1] | //book[@price=2] 表示获取属性price=1或者price=2的book节点
逻辑运算符:
< ,> , <= ,>= , !=, and , or
pythonxpath语法_xpath语法相关推荐
- 一文读懂XPath基本语法_XPath语法详解_XPath教程
因为最近在学习与整理有关python爬虫的文章,连带遇到XPath的使用,就顺便一起整理出来. XPath与自动化的关系 XPath是一门在XML文档中查找信息的语言,可用来在XML文档中对元素和属性 ...
- Java解析SQL生成语法树_Atitit.sql ast 表达式 语法树 语法 解析原理与实现 java php c#.net js python...
Atitit.sql ast 表达式 语法树 语法 解析原理与实现java php c#.net js python 1.1.Sql语法树ast如下图锁死 2.SQL语句解析的思路和过程 2.1.le ...
- Python基础语法——基础语法、变量
Python基础语法 基础语法 变量 一.基础语法 注释 - 代码中不会被编译成机器码的部分,即不影响程序功能的部分 单行注释:在一行内容前加#,让这行内容变成注(ctrl+/) 即,# 注释内容 # ...
- java xpath 语法_xpath 语法
前言 这一章节主要讲解Xpath的基础语法,学习如何通过Xpath获取网页中我们想要的内容;为我们的后面学习Java网络爬虫基础准备工作. 备注:此章节为基础核心章节,未来会在网络爬虫的数据解析环节经 ...
- java xpath语法_XPath详解
以下是本人找到的最完整最易懂的XPath教程,不敢私藏,拿出来与大家分享. 实例 1 基本的XPath语法类似于在一个文件系统中定位文件,如果路径以斜线 / 开始, 那么该路径就表示到一个元素的绝对路 ...
- laytpl语法_layui语法基础
一.按钮区分 1.按照主题划分 原始:class = "layui-btn layui-btn-primary" 默认:class = "layui-btn& ...
- pythonjs语法_Python语法精解:JSON语法
什么是JSON JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式.它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集 ...
- python基本语法-Python语法基础50题
1. Python3.x版本的保留字总数是 A. 35 B. 27 C. 16 D. 29 [答案]:A [解析]:Python中的保留字是35个(如果有33的选项也可选择),可以通过 help(ke ...
- python语法教程-Python语言的核心语法(1)(语法教程)(参考资料)
1.介绍 本参考手册描述了Python编程语言.它不是一个教程. 虽然我试图尽可能精确,但我选择使用英语而不是正式的规范,除了语法和词法分析.这应该使文档对普通读者更容易理解,但会留下歧义的余地.因此 ...
最新文章
- FPGA配置 - 基于SPI FLASH的FPGA多重配置(Xilinx)
- WCF入门(八)——异常处理2
- SAP MB51物料凭证清单程序增强增加四个字段
- iBATIS In Action:使用映射语句(二)
- struts2从一个action跳到另一个action的配置方法
- linux内核分为子系统,Linux内核内存管理子系统分析【转】
- Android加载图片OOM错误解决方式
- 中国五大物联网平台优势分析
- 信贷ABS资产静态池与动态池里的数据分析内容都有啥
- asp.net mvc4 设置build项目时,编译view页面
- 一篇 CPU 占用高,导致请求超时的故障排查
- 码栈——让一切变得自动化
- installshield 如何实现Oracle数据库脚本的执行功能
- java 音频波形图_java读取wav文件(波形文件)并绘制波形图的方法
- python开发面试自我介绍_面试中怎样做一个精彩的自我介绍
- Vue.js项目实战——Day(1)
- android的listview分组显示的时候layout_marginTop失效的解决办法
- OSChina 周五乱弹 —— 源花?真土鳖,我要开源小仙女!
- TypeScript基本语法(W3C)
- 电容屏物体识别_一种基于触摸屏触摸点的物体识别方法与流程