什么是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. 安装好的虚拟机,外部通过ssh工具连接,报connection failed

    今天,新装了一台ubuntu虚拟机,安装成功以后,准备利用Xshell从外部访问linux,以减少切换,但是,在连接时,总是会报:connection failed. 于是,写下这篇随笔,以增加记忆且 ...

  2. 基于TCP协议的项目架构之Socket流传输的实现

    项目背景  某银行的影像平台由于使用时间长,服务器等配置原因,老影像系统满足不了现在日益增长的数据量的需求,所以急需要升级改造.传统的影像平台使用的是Oracle数据库和简单的架构来存储数据(视频.图 ...

  3. Python模块学习---Web

    import urlparse url = urlparse.urlparse("http://www.python.org/doc/FAQ.html") print url pr ...

  4. BIOS 品牌快捷键

    主板品牌 启动按键 笔记本品牌 启动按键 台式机品牌 启动按键 华硕主板 F8 联想笔记本 F12 联想台式机 F12 技嘉主板 F12 宏基笔记本 F12 惠普台式机 F12 微星主板 F11 华硕 ...

  5. Kylin与CDH兼容性剖析

    1. 概述 Apache Kylin™是一个开源的分布式分析引擎,提供Hadoop之上的SQL查询接口及多维分析(OLAP)能力以支持超大规模数据,最初由eBay Inc. 开发并贡献至开源社区.它能 ...

  6. [转载]常见slave 延迟原因以及解决方法

    一  序言在运维线上M-M 架构的MySQL数据库时,接收的比较多关于主备延时的报警: 点击(此处)折叠或打开 check_ins_slave_lag (err_cnt:1)critical-slav ...

  7. app额外后台运行操作

    //在视图中运行操作中进行周期操作 - (void)applicationDidEnterBackground:(UIApplication *)application { [self beingBa ...

  8. 列表(List) 的增删改查及其他方法 和元组(tuple)的查

    一.列表 1.列表简介: 列表是python中的基础数据类型之一,其他语言中也有类似于列表的数据类型,比如js中叫数组,他是以[]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型比如:li ...

  9. python递归查找文件目录

    # -*- coding:utf-8 -*- import os allfile = []def get_all_file(path): allfilelist = os.listdir(path) ...

  10. metasploit魔鬼训练营(收集外围信息)

    现在我们时空穿越,来到魔鬼训练营的主角身上,现在我们要训练,对V公司进行渗透测试,回想起总监说的情报收集 1,外围搜集,指的是自己假装是一个正常用户来搜集情报 我们开启msf用auxiliary/sc ...