scrapy_xpath
什么是xpath?
- 路径表达式 在xml和html中进行导航
- 包含标准函数库
- 遵循w3c标准
xpth节点关系是什么?
- 父节点
- 子节点
- 兄弟节点
- 先辈节点
- 后代节点
xpth语法
- a 找所有a标签
- / article 找根元素article标签
- article/a 找所有属于article子标签的a标签
- //div 找根层级 下 所有div标签
- article//div 找article标签 下 所有div标签
- //@class 去所有标签中class属性值,src,href,id等属性
- a/@href 取所有a标签中href属性
xpath-谓法
- /article/div[1] 找article 子标签 的第一个div标签
- /article/div[last()] 找article目录下倒数一个div标签
- /article/div[last()-1] 找article目录下倒数第二个div标签
- //div[@lang] 找所有拥有lang属性的div标签
- //div[@lang=’eng’] 找所有lang=’eng 的div标签
- /div/* div标签下所有子标签
- //* 提取所有元素
- //div[@*] 提取div中有属性的标签
- /div/a | /div/p 提取div下所有a和p标签
如何获取抓取节点的值?
/text() 获得文本值
a['href'] 获取一个a节点的href属性值
xpath返回的对象可以继续xpath进行筛选
.extract() 返回data对应的数组值列表
对有多个属性的标签如何抓取?
[contains(@属性,属性值) ]
scrapy_xpath的更多相关文章
随机推荐
- 腾讯云负载均衡CLB的那些“独门利器”
欢迎大家前往云+社区,获取更多腾讯海量技术实践干货哦~ 作者:李想 腾讯人做产品一直是很贴近用户的需求的,腾讯云也不例外.负载均衡器作为公有云上的最基础的网络服务,几乎每家云厂商都会提供,虽然负载均衡 ...
- 浅析mongodb
当爬取数据时候,我们可能需要缓存大量的数据,但是又无须任何复杂的连接操作,因此我们将选用NoSQL数据库,这种数据库比传统的关系型数据库更易于操作,这里我想主要说一下目前非常流行的MongoDB作为缓 ...
- JavaScript对于switch语句中的case后键入值的带不带引号
一.用switch选择星期几 这时case为 例:case="星期一" 二.用switch选择单纯的数字 这时case为 例:case='1' 三.用switch选择一个应用了 ...
- 算法8 五大查找之:二叉排序树(BSTree)
上一篇总结了索引查找,这一篇要总结的是二叉排序树,又称为二叉搜索树(BSTree) . 构造一棵二叉排序树的目的,其实并不是为了排序,而是为了提高查找和插入删除的效率. 什么是二叉排序树呢?二叉排序树 ...
- js 抓取屏幕宽度设置字体大小 rem
var doc = window.document var docEl = doc.documentElement var tid function refreshRem () { var width ...
- PostgreSQL查询优化之子查询优化
子查询优化 上拉子连接 上拉子连接主要是把ANY和EXIST子句转换为半连接 void pull_up_sublinks(PlannerInfo *root) { Node *jtnode; //子连 ...
- OOAD-设计模式(一)概述
前言 在我们很多时候设计代码都是需要用到各种不一样的设计模式的,接下来着几篇给大家领略一下设计模式.知道设计模式的作用,以及在代码的具体体现.很多时候我们看不懂代码就是因为我们不知道它使用的设计模式. ...
- GDKOI2016 游记
2016.2.19~2.15强行广州koi被虐…… DAY 0 19日下午到达,第六次入住中大西苑宾馆,怂逼抽签抽中外交大使特殊职位,然后就一边看<死神>一边等石门两位室友啦.必须吐槽宾馆 ...
- The Blocks Problem(vector)
题目链接:http://poj.org/problem?id=1208 The Blocks Problem Time Limit: 1000MS Memory Limit: 10000K Tot ...
- os系统
任务延时函数OSTimeDly 功能:调用该函数的任务将自己延时一段时间并执行一次任务调度,一旦规定的延时时间完成或有其它的任务通过调用OSTimeDlyResume()取消了延时,调用OSTimeD ...