美文网首页
爬虫xpath

爬虫xpath

作者: WANGLIN_HZ | 来源:发表于2018-11-22 20:12 被阅读0次

什么是xpath?

  • XPath (XML Path Language) 是一门在 XML 文档中查找信息的语言,可用来在 XML 文档中对元素和属性进行遍历。
  • XML 指可扩展标记语言(EXtensible Markup Language)
  • XML 是一种标记语言,很类似 HTML
  • XML 的设计宗旨是传输数据,而非显示数据
  • XML 的标签需要我们自行定义
  • XML 被设计为具有自我描述性
  • XML 是 W3C 的推荐标准

XPath路径表达式

在使用XPath之前,需要先了解下XPath的节点,路径概念,这也是XPath这门语言的单词和语法。不求全通,至少了解嘛。其中,路径表达式是xpath()的传入参数。xpath()使用路径表达式对XML文档中的某个节点(或者多个节点)进行定位。路径表达式实例:/html/body/div[@class=”content”] 。按照节点和路径概念,这个表达式是按照html,body,div层级关系,寻找属性里有class=”content”的div节点。当然,这个结果也可能是多个节点。

  • notename :查找出html所有标签名为notename的节点
  • / : 表示从根节点开始查找(相对性的)
  • //: 从任意位置匹配出你想要的节点
  • . :选取当前节点
  • .. :选取当前节点的父节点
  • @ : 表示选择属性
  • text() :取标签的文本内容
  • notename[1] : 取标签名为notename的第一个节点
  • notename[last()] : 取标签名为notename的最后一个节点

XPath使用场景

在爬虫技术领域里为什么需要XPath呢?这是因为我们通过爬虫去网上爬取的很多都是html文档(比如爬知乎,爬微博),而我们通常需要对html数据进行解析,获取对我们有用的数据,然后再将这些处理后的数据存储起来。而解析HTML就需要用到XPath。(另外也可以通过css query来定位节点,但是一般其背后也是利用了XPath技术,而且XPath更加灵活和通用)

节点之间的关系

节点之间的关系主要有以下几种:

  • 父子关系:<book>节点是<title>, <author>等节点的父节点(Parent),相应的,<title>等节点为<book>节点的子节点(Children)
  • 兄弟关系(Sibling):<title>, <author>互为兄弟关系
  • 先辈(Ancestor): 父节点,父的父都是先辈,比如<book>, <bookstore>是<author>的先辈
  • 后代(Descendant): 子节点,子的子都是后代,如<book>, <author>都是<bookstore>的后代

相关文章

  • 爬虫解析库XPath使用

    爬虫解析库XPath使用 1.XPath简介 XPath 是一门在 XML 文档中查找信息的语言。XPath 用于...

  • Python爬虫(十三)_案例:使用XPath的爬虫

    本篇是使用XPath的案例,更多内容请参考:Python学习指南 案例:使用XPath的爬虫 现在我们用XPath...

  • XPath轴方法 - 捕捉
  • 标签内容但不捕获
  • 下的<
  • XPath轴(XPath Axes)可定义某个相对于当前节点的节点集: 1. 爬虫xpath遇到的问题:抓取

  • 爬虫系列(十):使用xpath做爬虫

    案例:使用XPath的爬虫 现在我们用XPath来做一个简单的爬虫,我们尝试爬取某个贴吧里的所有帖子,并且将该这个...

  • xpath 资料

    xpath路径表达式笔记 学爬虫利器XPath,看这一篇就够了 有感4月份,看过的python基础和爬虫相关的知识...

  • 爬虫 xpath

    一:回顾正则 find、rfind、replace 字符串处理函数只能处理固定的字符串baby hello 不能处...

  • 爬虫(Xpath)

    什么是XPath? XPath (XML Path Language) 是一门在 XML 文档中查找信息的语言,可...

  • 爬虫xpath

    什么是xpath? XPath (XML Path Language) 是一门在 XML 文档中查找信息的语言,可...

  • 爬虫 - XPath

    哎,还是要整理一下这枯燥的基础知识,,,没办法,逃不掉喽 我们回顾一下网页爬虫的整个思路: 先爬取整个网页,也就是...

  • 爬虫(xpath)

    什么是XPath? XPath (XML Path Language) 是一门在 XML 文档中查找信息的语言,可...

网友评论

      本文标题:爬虫xpath

      本文链接:https://www.haomeiwen.com/subject/esjrqqtx.html