Tag: xpath

Java XPath评估返回类型

有没有办法确定XPath评估的返回类型是什么? 我希望XPath尽可能地匹配。 它应该匹配一个nodelist,如果不能,一个节点,如果不能,一个值。 有没有一种简单的方法在Java中实现它?

符号已定义。 使用JAXB属性来解决冲突

我有一个xsd文件(yahoo.xsd),我导入另一个xsd文件,如下所示: stock.xsd看起来像这样: 当我使用xjc进行编译时,我收到以下错误消息: [错误]属性“符号”已定义。 使用解决此冲突。 我基本上在SO上找到了这个解决方案( JAXB编译问题 – [错误]属性“任何”已经定义 )但是我无法让它工作。 我猜我的XPath是错的。 这是我正在使用的绑定文件: 如果我现在正在使用xjc -b进行编译,则表示XPath评估会导致空目标节点。 我可能要重命名Symbol定义,然后重命名? 怎么自动这样做?

XPath normalize-space()返回一系列规范化字符串

我需要使用XPath函数normalized-space()来规范化我想要从XHTML文档中提取的文本: http : //test.anahnarciso.com/clean_bigbook_0.html 我正在使用以下表达式: //*[@slot=”address”]/normalize-space(.) 这在我用来测试XPath表达式的工具Qizx Studio中完美运行。 let $doc := doc(‘http://test.anahnarciso.com/clean_bigbook_0.html’) return $doc//*[@slot=”address”]/normalize-space(.) 这个简单的查询返回一系列xs:string 。 144 Hempstead Tpke 403 West St 880 Old Country Rd 8412 164th St 8412 164th St 1 Irving Pl 1622 McDonald Ave 255 Conklin Ave 22011 Hempstead Ave 7909 Queens Blvd 11820 Queens Blvd 1027 Atlantic Ave 1068 Utica […]

HTMLUNIT getformbyname,网站中未指定表单名称

我正在尝试使用HTMLUNIT来浏览网站上的按钮我遵循本教程http://htmlunit.sourceforge.net/gettingStarted.html但它需要一个表单名称。 我正在尝试做的网站有这个页面来源。 Are you sure you want to delete ‘Apple?’? 我正在尝试单击网页上的“是”按钮validation框。(删除按钮)如您所见,没有提供表单名称。 这是我的代码。 final WebClient webClient = new WebClient(); final HtmlPage page1 = webClient.getPage(“http://ma.some-site.com:8080/user/mike/delete”); List formlist = (List) page1.getForms(); System.out.println(formlist.toString()); final HtmlForm form = page1.getFormByName(“myform”); <—Problem here final HtmlSubmitInput button = form.getInputByName("Submit"); button.click(); webClient.closeAllWindows(); 我尝试了这个但是没有用 final HtmlForm form = page1.getFormByName(formlist.get(1).getLocalName()); 我相信你可以使用xpath来查找表单名称?

如何在Java中使用XPath获取属性值?

我使用XPath解析下面的XML: test name1 test name2 test name3 我想根据我传递的ID从xml文档中获取“名称”,但是我无法获得所需的数据,而是查询返回空白。 XPathExpression expr = xpath.compile(“/schema/element[@id=’name_id_2′]/name/text()”);

如何使用selenium设置“value”来输入web元素?

我的代码中的元素看起来像这样: 我想设置它的值,所以我用它的xpath创建了一个web元素: val test = driver.findElements(By.xpath(“””//*[@id=”invoice_supplier_id”]”””)) 但现在我没有看到设置值的选项……

使用具有多个条件Java的XPath在特定标记内读取

– – – – kvarga 2013-11-30, 08:50 2013-11-30, 08:54:46 – NODE x:6.5cm y:10.5cm index:7 I WANT THIS PARA 1 kvarga 2013-11-30, 08:50 2013-11-30, 08:54:46 – NODE x:6.5cm y:10.5cm index:7 I WANT THIS PARA 2 Hye我想读取这个xml文件,需要获取标签内的文本,如下所示: 我一直在尝试使用我的代码获得结果: DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = null; try { builder = builderFactory.newDocumentBuilder(); org.w3c.dom.Document document = builder.parse( new FileInputStream(“c:\\y.xml”)); […]

从BR​​标签中提取文本

之前我已经能够使用Selenium提取文本了,但是我只是在标签之间提取数字时遇到了麻烦。 这是html代码的示例。 Working Title Further information on subject 3.000 2.000 More information 到目前为止,我尝试过使用: WebElement creditinfo = driver.findElement(By.xpath(“//div[@class=’pagebodydiv’]/text()[preceding-sibling::br] 和Elements numInfo = doc.select(“br”); 但是,我一直遇到NoSuchElementException错误,InvalidSelectorException错误,或者它只是没有返回任何内容。 关于如何获取信息的任何想法?

选择xml原始文本

给出像这样的xml: Text 我想选择item / xmlText下的所有文本 。 我想用标签(someTag,otherTag)打印此节点的所有内容。 我更愿意用XPath处理这个问题,但这是Java程序的一部分,所以如果有这样的机制我也可以接受它。

使用xPath修改XML文件

我想使用xPath修改现有的XML文件。 如果该节点不存在,则应创建该节点(如果需要,则与其父节点一起创建)。 一个例子: true 1.0 这里有几个我想插入/修改的xPath: /configuration/param1/text() -> 4.0 /configuration/param2/text() -> “asdf” /configuration/test/param3/text() -> true 之后XML文件应如下所示: true 4.0 asdf true 我试过这个: import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.xpath.XPath; import javax.xml.xpath.XPathConstants; import javax.xml.xpath.XPathFactory; import javax.xml.transform.Transformer; import javax.xml.transform.TransformerFactory; import javax.xml.transform.dom.DOMSource; import javax.xml.transform.stream.StreamResult; import org.w3c.dom.Document; import org.w3c.dom.Node; import org.w3c.dom.NodeList; try { DocumentBuilderFactory domFactory = DocumentBuilderFactory.newInstance(); Document doc = domFactory.newDocumentBuilder().parse(file.getAbsolutePath()); XPath xpath […]