Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html XPath查询以获取标记和标记_Html_Xml_Xpath_Xpath 2.0_Domxpath - Fatal编程技术网

Html XPath查询以获取标记和标记

Html XPath查询以获取标记和标记,html,xml,xpath,xpath-2.0,domxpath,Html,Xml,Xpath,Xpath 2.0,Domxpath,我一整天都在尝试使用Xpath查询从和标记中获取值,但我做不到。有人能帮我使用xpath查询来获取它们吗。请参阅下面的html代码 <html class="chrome webkit"> #shadow-root <head>...</head> <body id="jira" class="aui-layout aui-theme-default page-type-dashboard" data-version="6.1.2" data-aui-v

我一整天都在尝试使用Xpath查询从和标记中获取值,但我做不到。有人能帮我使用xpath查询来获取它们吗。请参阅下面的html代码

<html class="chrome webkit">
#shadow-root
<head>...</head>
<body id="jira" class="aui-layout aui-theme-default page-type-dashboard" data-version="6.1.2" data-aui-version="5.1.6">
<div id="page">
<header id="header" role="banner">...</header>
<div id="announcement-banner" class="alertHeader">
  <b> Production </b>
  <marquee scrollamoun="3" behaviour="alternate" onmouseover="this.stop()" onmouseout ="this.start()">..</marquee>
<#shadow-root
<font-color="red"> Note:Please check out 1.</font>
<a href="https://docs.google.com/a/query.com/document/" target="_blank">
 <b>
  <font color ="red"> GSD Service </font>
 </b>
</a>
</marquee>
</div>
<section id="content" role="main">...</section>
<footer id="footer" role="contentinfo">...</footer>
</div>
<div class="shim hidden"></div>
<div class="shim hidden"></div>
<div class="shim hidden"></div>
<div class="shim hidden"></div>
<div class="shim hidden"></div>
<div class="shim hidden"></div>
</body>
</html>

类似地,我在这个标记之后还有三个a标记,因此我想分别获得所有a标记和b标记,以便在我的应用程序中显示。请帮助我进行XPath查询。

假设HTML是,以下XPath将选择所有a元素:

//a
只是第一个a:

只有div中@id为page的第一个a:

您可以同样轻松地将这些概念应用于选择b

使现代化 以下XPath将选择您在注释中指出的所有所需元素:

//div[@id='page']//div[@id='announcement-banner']//a[@target='_blank']
注:

当您的评论要求target=\u为空时,您的 发布的HTML的target=\为空,因此您可能需要进行调整。 如果您希望在任何深度立即遏制而不是遏制,请使用/而不是//。
非常感谢您的回答,但我已经试过了-@//div[@id='page'];但正如你提到的那样。我想进入公告横幅标签的内部,进入字幕标签的内部,然后最终获得和标签,我试着使用您的-//div[@id='page']//a[1]。你能让我知道如何在我的箱子里的另一个div标签中放入div标签,然后是a标签和b标签吗?对不起,我再次检查了它现在工作正常,但它显示了所有的a标签,但我只需要5个标签,如何选择我需要的特定元素,如果我得到了宾果,我就有了确切的答案。你想要的5A元素和你不想要的有什么区别?它们有这个标记:target=\u blank,还有一个问题是,你给我的答案是从div[@id='page'中提取所有标记但是我需要的所有标签都在公告横幅div标签中。您能告诉我如何访问id=page标记中的公告横幅div标记吗?您好,非常感谢。我尝试了您提供给我的xpath更新,但问题是当我使用-@//div[@id='page']//div[@id='announcement-banner']时;
(//div[@id='page']//a)[1]
//div[@id='page']//div[@id='announcement-banner']//a[@target='_blank']