什么是xpath?

  1. 路径表达式 在xml和html中进行导航
  2. 包含标准函数库
  3. 遵循w3c标准

xpth节点关系是什么?

  1. 父节点
  2. 子节点
  3. 兄弟节点
  4. 先辈节点
  5. 后代节点

xpth语法

  1. a                找所有a标签
  2. / article             找根元素article标签
  3. article/a               找所有属于article子标签的a标签
  4. //div                    找根层级 下 所有div标签
  5. article//div          找article标签 下 所有div标签
  6. //@class             去所有标签中class属性值,src,href,id等属性
  7. a/@href              取所有a标签中href属性

xpath-谓法

  1. /article/div[1]                          找article 子标签 的第一个div标签
  2. /article/div[last()]                   找article目录下倒数一个div标签
  3. /article/div[last()-1]               找article目录下倒数第二个div标签
  4. //div[@lang]                                找所有拥有lang属性的div标签
  5. //div[@lang=’eng’]               找所有lang=’eng 的div标签
  6. /div/*                                           div标签下所有子标签
  7. //*                                                提取所有元素
  8. //div[@*]                                    提取div中有属性的标签
  9. /div/a | /div/p                            提取div下所有a和p标签

如何获取抓取节点的值?

/text()                   获得文本值

a['href']                获取一个a节点的href属性值

  xpath返回的对象可以继续xpath进行筛选

  .extract()         返回data对应的数组值列表

对有多个属性的标签如何抓取?

[contains(@属性,属性值) ]

scrapy_xpath的更多相关文章

随机推荐

  1. shell脚本的if语句,判断某程序是否存在,不存在启动该程序!

    想必大家都知道 "如果......那么......" 这种语法的应用吧! 当然呢,linux下对于这种用法也是有所考虑的,很多时候我们都需要写一个shell脚本,难免会避免if语句 ...

  2. [Spark内核] 第37课:Task执行内幕与结果处理解密

    本课主题 Task执行内幕与结果处理解密 引言 这一章我们主要关心的是 Task 是怎样被计算的以及结果是怎么被处理的 了解 Task 是怎样被计算的以及结果是怎么被处理的 Task 执行原理流程图 ...

  3. [Spark性能调优] 第二章:彻底解密Spark的HashShuffle

    本課主題 Shuffle 是分布式系统的天敌 Spark HashShuffle介绍 Spark Consolidated HashShuffle介绍 Shuffle 是如何成为 Spark 性能杀手 ...

  4. http转https实战教程iis7.5

    HTTP转HTTPS实战教程IIS7.5 (备注:确保IIS安装完成.ASP.NET 等配置无误) 1.          本文以阿里云为例,先在阿里云注册域名并且进行备案.备案完成后,在左侧菜单申请 ...

  5. kali系统教程:创建热点

    1:把网卡改成混杂模式 sduo airmon-ng start wlan0 2:aircrack套件创建一个fake-ap airbase-ng -e fake-ap -c wlan0mon 此时, ...

  6. InnoDB锁机制

    1. 锁类型 锁是数据库区别与文件系统的一个关键特性,锁机制用于管理对共享资源的并发访问. InnoDB使用的锁类型,分别有: 共享锁(S)和排他锁(X) 意向锁(IS和IX) 自增长锁(AUTO-I ...

  7. kylin客户端(python编写)不能按照预期的segment进行rebuild

    kylin_client_tool 提供了对cube进行BUILD,REBUILD,MERGE功能,其中REBUILD却不能达到预期的效果按照指定的segment执行. 场景: 当我在kylin we ...

  8. 基于springboot微信公众号开发,几分钟学会微信自动回复

    效果图 1.准备工作 申请微信订阅号(个人只能申请订阅号,而且没什么功能,也无法认证),申请完毕,点击 开发=>基本配置,如下图: 服务器配置需要有 域名 80端口,我猜你没有,这里推荐个实用工 ...

  9. Zabbix实战-简易教程系列

    一.基础篇(安装和接入) Zabbix实战-简易教程--总流程  Zabbix实战-简易教程--整体架构图 Zabbix实战-简易教程--DB安装和表分区 Zabbix实战-简易教程--Server端 ...

  10. [Haskell] 为什么列表操作++很昂贵?

    博主是haskell新手.学习haskll的时候遇到了一些问题,在寻求答案的过程中产生了一些思考,可能理解存在偏差,希望各位不吝赐教. 提出问题 <Learn you a haskell for ...