xpath 相关问题

XPath的主要目的是解决XML文档的各个部分。它还提供操纵弦乐,数字和布尔值的基本设施。 XPath使用紧凑的非XML语法。 XPath在XML文档的抽象逻辑结构上运行,而不是表面语法。

如何解决 XPath 在网页上找不到元素的问题?

我正在使用 Bash 脚本 # 定义 URL 和浏览器变量 sGDomain=“理想主义者” sGCitta="fucecchio-佛罗伦萨" sGTypo="vendita-case" iGPagina=1 # 开始...

回答 1 投票 0

如何使用 XPath 3.1 生成 JSON 字符串

我在节点中有一些文本,例如: <你好世界“&”foo bar> 我想处理 /xml/...

回答 1 投票 0

用 XQuery/XPath 3.1 替换任意嵌套映射/数组中的字符串

我有一个从JSON文件解析的地图,例如: 让 $template := 地图{ “名称”:“{{名称}}”, “聚合评级”:地图{ " ratingValue": "{{评级...

回答 1 投票 0

如何区分 XPath 3.1 中的 Map、Array、String 等?

有没有一个函数可以测试(或返回).的类型?例如: ( root(), (), "a", 1, 地图{}, 数组{} ) !未知:类型(.) 节点 顺序 细绳 数字 地图 数组

回答 1 投票 0

如何使用 XPath 变量在 WordPress 中动态填充架构?

我的 WordPress 项目中有帖子类型“公司”的架构,但我也有 XPath 变量,但我不知道如何处理它们。任何可能在 XPath 工作过的人都可以帮助我...

回答 1 投票 0

XPath 排除子相似元素

如何通过属性名称选择所有元素,但使用 xpath 排除相同的子元素。 HTML 代码: 产品名称 如何通过属性名称选择所有元素,但使用 xpath 排除相同的子元素。 HTML 代码: <div c-store="test"> <div c-text>Product Name</div> <div c-store="test"> <div c-text>Product Name</div> <div c-store="test"> <div c-text>Product Name</div> </div> </div> </div> 结果应该是: <div c-store="test"> <div c-text>Product Name</div> </div> 每个 [c-store] 元素不应包含其他类似的 [c-store] 元素 这个 XPath, //div[@c-store="test"][not(div[@c-store="test"])] 将选择 div 值为 @c-store 的所有 "test" 元素,前提是 div 元素没有具有相同属性的子 div 元素。

回答 1 投票 0

我创建了一个脚本来检查复选框。单击复选框后,会打开一个新选项卡,但该复选框保持未选中状态

我想自动化注册过程,但无法使用 Playwright 选中该框。每次我单击该复选框时,我都会被重定向到一个新链接。在 DOM 中,当选中复选框时,

回答 1 投票 0

我可以根据 XML 模式验证 XPath 表达式吗?

您可以根据 XML 文档验证 XPath 表达式来验证它,但是有没有一种简单的方法可以根据该文档的架构验证相同的 XPath 表达式? 假设我有一个 XSD 架构,例如...

回答 3 投票 0

在`return`之前定义一个变量并在另一个`:=`中使用它是否安全?

我记得在某处读过,XPath 可能会处理 //; 中表达式的组件。所以我的问题是:我可以定义一个变量并在...的其他变量定义中使用它吗?

回答 1 投票 0

直接将链接的 XPATH 粘贴到 selenium 中会指向另一个链接

我正在自动完成 Linkden 配置文件的登录和配置文件完成。我已经能够进入主页并通过登录页面。我正在尝试通过模拟 CLI 进入个人资料页面...

回答 1 投票 0

Puppeteer 22.x 中的 XPath 选择器

我已经阅读了最新的puppeteer v22.x有关XPath的文档,但仍然不知道如何在puppeteer 22.x中使用XPath。 目标是我想单击包含“下一个”文本的文本,这里的 HTML...

回答 1 投票 0

Selenium Java:单击 Shadow-root 内带有 CSSselector 的按钮

我从这里弹出cookie: 网站 我用 Shadow-root 选择了它,如下所示: 如何 现在我想单击带有 xpath 表达式的按钮,如下所示: WebElement ShadowHost = driver.findElement(...

回答 1 投票 0

Android 混合应用程序 - Chrome 检查 Xpath 无法使用 Java 找到

我对 Android 应用程序测试非常陌生。 我开始测试混合应用程序。在登录页面之后,我想捕获一些特定元素的 xpath 和值。 我使用 Chrome Inspector 来...

回答 1 投票 0

Google 表格 IMPORTXML 和 XPath href 和标题未返回

我需要使用 Google Sheets ImportXML 和 Xpath 提取一些 URL 及其各自的标题。 我找到了这些以前的答案并对其进行了测试,但它们似乎不适用于我的情况: 额外...

回答 1 投票 0

Selenium webdriver-当所有产品都具有相同类别时如何选择产品(amazon.in)

我正在尝试自动化 amazone.in。我想点击特定产品。但在 Amazon.in 中,所有产品都有相同的类别。 产品1 我正在尝试使 amazone.in 自动化。我想点击特定产品。但在 Amazon.in 中,所有产品都有相同的类别。 产品1 <h2 class="a-size-medium s-inline s-access-title a-text-normal">Puma Men's Storm Ind Mesh Running Shoes</h2> 产品2 <h2 class="a-size-medium s-inline s-access-title a-text-normal">Nike Men's Eliminate Ii Mesh Running Shoes</h2> 我该如何继续? 下面是我的代码 driver.manage().window().maximize(); driver.get("http://amazon.in"); driver.findElement(By.id("twotabsearchtextbox")).sendKeys("shoes"); driver.findElement(By.id("twotabsearchtextbox")).submit(); driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS); driver.findElement(By.xpath("//h2[@class='a-size-medium s-inline s-access-title a-text-normal']")).click(); 是否可以使用“标题”标签单击元素? 您可以通过将产品名称添加到 xpath 中来缩小范围来解决此问题。 driver.findElement(By.xpath("//h2[@class='a-size-medium s-inline s-access-title a-text-normal' and contains(text(), \"Nike Men's Eliminate Ii Mesh Running Shoes\")]")).click(); 上面的代码将点击第一个产品。您只需替换产品名称即可点击相关产品。 您可以通过以下方法来实现, Xpath 轴 text()='' 索引 Xpath 如上所述。 大多数问题都有不止一种解决方案。祝一切顺利。

回答 2 投票 0

选择子字符串的多个节点的 xpath 具有无效标记

xml 文档在注释节点中包含注释,如下所示: 09/28/2021 22:21:31user1 [1] 文件已上传 09/28/2021 22:22:47user2 [2] ...

回答 1 投票 0

Xpath 表达式清晰度 - Java Selenium

我通过点击 YouTube 视频趋势部分来练习 XPath。在趋势部分,我想单击第二个视频,无论存在哪个视频。我已经写了...

回答 1 投票 0

使用XPath和Python的lxml模块,如何验证节点的路径?哈利·波特

我将 XPath 与 Python 的 lxml 模块一起使用,并具有以下 xml 代码。 哈利·波特 我将 XPath 与 Python 的 lxml 模块一起使用,并具有以下 xml 代码。 <library> <section1> <book> <title>Harry Potter</title> <author>J.K. Rowling</author> </book> </section1> <section2> <book> <title>Sapiens</title> <author>Yuval Noah Harari</author> </book> </section2> </library> 现在我有一些 title 节点:titles = root.xpath('//title')。如何验证标题是否是 xml 根的子节点 section1 的后代?由于某种原因,我必须先获取标题,然后进行验证。像这样的东西: if validation: do_sth() 由于 <library> 是根,文件中的所有内容都是 <library> 的后代,因此没有必要对其进行测试。除此之外,如果您正在寻找 <title> 的后代 <section1>,请尝试: from lxml import etree books = """[your xml above]""" doc = etree.XML(books) for title in doc.xpath('//title[ancestor::section1]'): print(title.text) 这种情况下的输出应该是 Harry Potter

回答 1 投票 0

我可以在 Notepad++ 中创建 XPATH 表达式并将结果粘贴到电子表格中吗?

这是我的源xml 这是我的源xml <?xml version="1.0" encoding="UTF-8"?> <file> <Dog ID="Rover" Breed="Sheep Dog"> <feature name="Trick1"> <value> <trick>Roll Over</trick> </value> </feature> <feature name="Trick2"> <value> <trick>SheepToBarn</trick> </value> </feature> </Dog> <Dog ID="Spike" Breed="Chihuahua"> <feature name="Trick1"> <value> <trick>Scream</trick> </value> </feature> <feature name="Trick2"> <value> <trick>Attack</trick> </value> </feature> <feature name="Trick3"> <value> <trick>PoopInPurse</trick> </value> </feature> </Dog> <Dog ID="Larry" Breed="Hound"> <feature name="Hunt1"> <value> <technique>FlushOutRabbits</technique> </value> </feature> <feature name="Hunt2"> <value> <technique>TreeRaccoons</technique> </value> </feature> </Dog> </file> 这是我的 XPath 表达式 //feature[contains(@name,'Trick')]/ancestor-or-self::/@ID |//feature[contains(@name,'Trick')]/ancestor-or-self:: /@Breed |//feature[contains(@name,'Trick')]/ancestor-or-self::*/@name | //特征[包含(@name,'Trick')]/值/trick 这是Notepad++的结果 我希望将剪贴板中的信息放入这样的工作表中。 我尝试了 Xpath,如图所示。 我有两个问题: 1-以表格形式获取 Notepad++ 结果 2-从 xml 中获取元素名称“feature”,以便可以在单元格 C1 中使用它。 我还没有弄清楚 Notepad++ 中的 Xquery,但我对 BaseX 中的 Xquery 有了一些兴趣 使用 XQuery(例如使用 BaseX online at this fiddle)你可以使用 declare namespace output = "http://www.w3.org/2010/xslt-xquery-serialization"; declare option output:method 'text'; declare option output:item-separator '&#10;'; //trick!string-join((ancestor::Dog!(@ID, @Breed),ancestor::feature!@name, .), ', ') 并获得例如 Rover, Sheep Dog, Trick1, Roll Over Rover, Sheep Dog, Trick2, SheepToBarn Spike, Chihuahua, Trick1, Scream Spike, Chihuahua, Trick2, Attack Spike, Chihuahua, Trick3, PoopInPurse

回答 1 投票 0

使用XPath和Python的lxml模块,如何检查节点在特定层次结构级别是否具有特定祖先节点哈利·波特

我将 XPath 与 Python 的 lxml 模块一起使用,并具有以下 xml 代码。 哈利·波特 我将 XPath 与 Python 的 lxml 模块一起使用,并具有以下 xml 代码。 <library> <section1> <book> <title>Harry Potter</title> <author>J.K. Rowling</author> </book> </section1> <section2> <book> <title>Sapiens</title> <author>Yuval Noah Harari</author> </book> </section2> </library> 假设我有一些从 lxml 的 title 方法获得的 .xpath 节点。如何检查其中一些是否有 section1 祖先,它是 library 根节点的子节点? 由于 <library> 是根,文件中的所有内容都是 <library> 的后代,因此没有必要对其进行测试。除此之外,如果您正在寻找 <title> 的后代 <section1>,请尝试: from lxml import etree books = """[your xml above]""" doc = etree.XML(books) for title in doc.xpath('//title[ancestor::section1]'): print(title.text) 这种情况下的输出应该是 Harry Potter

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.