XPath的主要目的是解决XML文档的各个部分。它还提供操纵弦乐,数字和布尔值的基本设施。 XPath使用紧凑的非XML语法。 XPath在XML文档的抽象逻辑结构上运行,而不是表面语法。
当所有 svg 元素具有相同的属性和值时,在 selenium-java 中处理 Svg 元素而不使用索引位置
在我的应用程序中,我有 200 个具有相同属性和值的 svg 元素 (//*[name()='svg'][@class='tree-node-icon']) 但是当我定位一个 svg 元素时,它会被定位,因为我使用了索引 po...
我正在尝试使用 xpath 从我的 xml 文件中获取里程表的值: 我正在尝试使用 xpath 从我的 xml 文件中获取 Odometer 的值: <?xml version="1.0" encoding="UTF-8"?> <CWEAI xmlns="http://www.carrierweb.com/Schema/CWEAI_schema_1.0/cwReturnTruckCanbusHistory"> <cwReturnTruckCanbusHistory> <ID>549094411</ID> <CWVehicleID>109755</CWVehicleID> <Odometer>1374031</Odometer> <Fuel>452800</Fuel> <FuelLevel>1000</FuelLevel> </cwReturnTruckCanbusHistory> </CWEAI> 我已经尝试过任何事情,但我无法获得有效的 xpath: CWEAI/cwReturnTruckCanbusHistory/Odometer CWEAI/cwReturnTruckCanbusHistory/Odometer/text CWEAI[@xmlns="http://www.carrierweb.com/Schema/CWEAI_schema_1.0/cwReturnTruckCanbusHistory"]/cwReturnTruckCanbusHistory/Odometer text是Xpath函数,所以要正确使用它 /CWEAI/cwReturnTruckCanbusHistory/Odometer/text() 结果是Text='1374031' 使用 php 工作: $xml = simplexml_load_string($str); $ns = $xml->getNamespaces(true); $xml->registerXPathNamespace('c', current($ns)); $target = $xml->xpath('//c:CWEAI//c:cwReturnTruckCanbusHistory/c:Odometer/text()'); echo $target[0]; 3v4l.org 上的演示
如何find_element(By.XPATH)并在selenium中发送密钥?
尝试更新我的代码以使用“driver.find_element(By.XPATH...”而不是“driver.find_elements_by_xpath(...”),但是当我发送密钥时,我不断收到以下错误: 瑟...
我正在尝试以编程方式获取网页元素的 XPath。 我正在 HTML 源中搜索特定模式,当我找到一个模式时,我会得到返回的字符串以及起始位置...
Selenium“无法使用 LINK_TEXT 或 XPATH 定位元素”
我正在使用此代码... 类浏览器: 浏览器,服务=无,无 def __init__(self, 驱动程序:str): self.service = 服务(驱动程序) self.browser = webdriver.Edge() #webdrive...
我被困住了..这么多个小时..在这里查找了数百个问题和答案.. 我想从银行产品网站 grep 数据,例如“德尔塔”来自: https://wertpapiere.ing.de/Investie...
为什么 google chrome 不打印我的 XPath 查询的 text() ?
我正在尝试在 Chrome 中提取 xpath 查询 $x('//td[@class="first"]/a/text()') 的文本,但是当我运行此命令时,我看到文本而不是锚链接的实际文本值...
我正在尝试更好地使用 XPATH – 特别是在 Javascript 中通过 document.evaluate() 通常,当学习 Javascript 的新方面时,我会研究 MDN 文档,因为它们往往是......
需要一些有关 XPath 表达式的帮助。一个有效,另一个无效
我正在使用 COBRA HTMLParser,但还没有解析一个特定标签的运气。这是来源: ... 我正在使用 COBRA HTMLParser,但还没有解析一个特定标签的运气。来源如下: <li id="eta" class="hentry"> <span class="body"> <span class="actions"> </span> <span class="content"> </span> <span class="meta entry">Content here </span> <span class="meta entry stub">Content here <span class="shared-content"> Information by <a class="title" data="associate" href="/associate">Associate</a> </span> </span> </span> </li> 我能够使用以下 XPath 来获取正确的信息: XPath xpath = XPathFactory.newInstance().newXPath(); NodeList nodeList = (NodeList) xpath.evaluate("//span[contains(@class, 'body')]", document, XPathConstants.NODESET); int length = nodeList.getLength(); System.out.println(nodeList.getLength()); for(int i = 0; i < length; i++) { Element element = (Element) nodeList.item(i); NodeList n = null; try { n = (NodeList) xpath.evaluate("span[contains(@class, 'content')]", element, XPathConstants.NODESET); String body = n.item(0).getTextContent(); System.out.println("Content: " + body); } catch (Exception e) {}; try { String date = (String) xpath.evaluate("span[contains(@class, 'meta entry')]/a/span/@data", element, XPathConstants.STRING); System.out.println("DATA: " + date); String source = (String) xpath.evaluate("//span[contains(@class, 'meta entry')]/span", element, XPathConstants.STRING); System.out.println("DATA: " + source); } catch (Exception e) {}; //This does not work at all! I've tried every combination and still can't get it to run try { String info = (String) xpath.evaluate("//span[@class='shared-content']/a/@data", element, XPathConstants.STRING); System.out.println("INFO: " + info); } catch (Exception e) {}; } 无论我尝试什么组合,最后一个表达式都不起作用。我也尝试过以下方法,但没有帮助, String info = (String) xpath.evaluate("//span[contains(@class, 'shared-content')]/a/@data", element, XPathConstants.STRING); String info = (String) xpath.evaluate("//span[contains(@class, 'meta entry info')]/span/a/@data", element, XPathConstants.STRING); 有什么建议吗? 编辑:有一些关于 XML 非法的建议(老实说,我自己也不确定为什么它是非法的,因为到目前为止我几乎到处都看到它),但我无法控制 XML不过(至少到周一,直到我的其他朋友回来为止)。我试图看看编写包含这些信息的混搭的可行性。有什么办法可以禁用检查或其他什么吗? 这是解析的 XML: <?xml version="1.0" encoding="UTF-8"?> <span class="body"> <span class="content">TextContent</span> <span class="meta entry">TextContent</span> </span> 我猜文档没有被正确解析。 XPathVisualizer 是一个很好的 XPath Visualizer 工具,在 Windows 上运行,可让您查看 XPath 查询的结果。 Xcopy 安装,单个 EXE 文件。自由的。 我拿走了它并在其中运行了您的查询,得到了这个结果: @Jherico,@安德鲁·基思 我不知道 COBRA HTMLParser,但是将 #PCDATA 与内部节点结合起来是一种合法的 XML 格式。 这可以在 DTD 中这样定义: <!ELEMENT text_node (#PCDATA|i|b|u)*> 这就是格式良好的 HTML 仍然是合法的 XML 的方式。 我运行了以下代码 public static void main(String[] args) throws SAXException, IOException, ParserConfigurationException, XPathExpressionException { Document doc = XmlUtil.parseXmlResource("/temp.xml"); for (Node n : XPathUtil.getNodes(doc, "//span[contains(@class, 'body')]")) { System.out.println(XPathUtil.getStringValue(doc, "//span[@class='shared-content']/a/@data")); } } 它输出“关联”。我认为你的 XPath 没问题。相反发生了什么?您能否删除空的 catch 块,以便我们可以查看您是否确实遇到了异常? 注意,XmlUtil 和 XPathUtil 是我个人的方便函数,用于消除大部分 XPath 和 XML 样板代码。 我刚刚按原样运行了您的代码示例(复制粘贴)并得到了此输出。所以一切看起来都很好。 (你用的是哪个cobra版本?我0.98.4) 1 Content: DATA: DATA: Information by Associate INFO: associate 可重复的测试(?) 使用javac/java版本1.6.0_16(HotSpot客户端:build 14.2-b01,混合模式,共享) 我从这里下载了 0.98.4 (cobra-0.98.4.zip) Sourceforge:Cobra HTML 工具包下载 从 js.jar 中提取 cobra.jar 和 cobra-0.98.4.zip:\lib 到目录 XXX 在同一目录中写入XMLTest.java和HTMLTest.java(!文件名是源链接) 运行此编译(Windows):javac -cp .;cobra.jar;js.jar *.java 然后像这样执行(包括输出) XML测试 java -cp .;cobra.jar;js.jar XMLTest 1 XML测试输出: 1 Content: DATA: DATA: Information by Associate INFO: associate HTML测试 java -cp .;cobra.jar;js.jar HTMLTest 1 HTML测试输出: 1 Content: DATA: DATA: Information by Associate INFO: associate
我正在与纽约时报语料库合作开展一个项目,现在我在使用 xml 文件检索大部分项目的文本内容时遇到困难。 语料库中的每一年
网页抓取 <td>标签问题 - Python 3 With Lxml
使用 lxml 库在 python 中进行网页抓取。我的代码当前输出一个空列表: 从 lxml 导入 html 导入请求 page = requests.get('www.example.com') 树 = html.fromstring(page.content)
我正在编写一个Javascript,它应该找到同意横幅按钮并单击“接受所有cookie”等按钮。我的代码适用于多个站点,如下: 函数removeDiac...
如何使用 VBA 和 MSXML2 通过 Xpath 进行搜索?
我想使用 XPath 表达式从网站获取元素。我使用内置的 Microsoft 库 MSXML2 来执行此操作,但没有 getElementByXpath() 方法。我发现这非常有趣...
“不 ” “消息” “ 成立” 我想识别div中的所有文本,并且class属性值是动态的,所以c...
“不 ” “消息” “ 成立” 我想识别 div 中的所有三个单词,并且 class 属性值是动态的...
任何人都可以帮助我如何为同一 div 标签内的所有文本单词编写 xpath
“不 ” “消息” “ 成立” 我想识别 div 中的所有三个单词,并且 class 属性值是动态的...
Freeplane 文件是 XML,它们显然使用 groovy 脚本,但我无法弄清楚如何使用父节点中的公式返回属性(作为文本字符串)。主要帮助页面在这里:http...
这是 jenkins xml 文件的一部分。 我想用 xpath 提取project_name 的defaultValue。 在本例中,该值是 *****。 ...