XPath主要用于HTML还是XML或XHTML?

thr*_*A's 5 html xml xhtml xpath web-scraping

我对XPath概念完全陌生,对XPath有非常基本的了解。我首先开始使用XPath在HTML页面上查找Web元素。

现在,当在Web上搜索(视频和文本)时,我发现所有XPath教程都与XML(而不是HTML页面)相关。

维基说,

XPath(XML路径语言)是一种查询语言,用于从XML文档中选择节点。

这让我很困惑。

  1. XPath是否不用于HTML文档?
  2. 在编写用于HTML,XML和XHTML的XPath方面是否存在根本/结构上的差异?

请注意,我知道这个问题低于标准水平,但仅出于完全误解,我在这里提出这个问题。

kjh*_*hes 4

你有权利感到困惑。

XPath 针对通常假设标记格式良好的数据模型进行操作。根据定义,XML 和 XHTML 必然是格式良好的;HTML,不一定。然而,HTML 解析器通常可以成功地将格式不正确的标记解析为适合 XPath 的数据模型,本着自由接受输入内容的精神。

因此,您通常也可以将 XPath 与 HTML 结合使用。事实上,以这种方式使用 XPath 是一种常见的网页抓取技术。