问题标签 [xmlslurper]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
819 浏览

xml - 如何在使用 XmlSlurper 解析 xml 时读取冒号的属性名称(例如模型:名称)

我有一个 XML,其中一个属性是例如模型:名称。

升级到 Grails 2 后,无法使用提取属性

it.@"model:name".text()

我已经阅读了如何在使用 XmlSlurper 解析 xml 时读取带连字符的属性名称(例如 model_name),并且也遵循了链接,但没有任何内容指向有关如何处理冒号属性的文档。

xml:lang 属性的最终解决方案: it.attributes()['{ http://www.w3.org/XML/1998/namespace }lang']

0 投票
1 回答
67 浏览

html - 如何使用 Cyber​​Neko 获取 html 内容?

我要输出

我的html在哪里:

但我的输出是

如何告诉 xmlSluper 获取代码,而不是内容?

0 投票
1 回答
4586 浏览

html - 使用 XmlSlurper 时出现 MalformedURLException

我在 groovy 中有以下代码片段:

它给出了以下异常:

MalformedURLException为什么解析XML时应该有一个?

0 投票
1 回答
4322 浏览

xml - Groovy - XmlSlurper - 将属性读入 Map

创建包含作为键的属性和相应值的映射的最佳方法是什么?

谢谢。

0 投票
3 回答
620 浏览

groovy - Groovy - XmlSlurper - 找到最里面的元素

我有以下xml:

给定一个 xml,我们如何获取最里面的元素(在本例中是所有<price>元素)?

0 投票
1 回答
366 浏览

groovy - XmlUtil.serialize :以大写形式输出标签

我正在尝试从 html 创建一个有效的 html 文档

但是,输出将包含所有大写的标签名称,例如。HTML/BODY 如何阻止它大写标签。

0 投票
2 回答
1607 浏览

groovy - XML Slurper - 属性的空字符串

解析属性时,slurper 会在未找到属性时设置一个空字符串。

例如,car.setOwner(node.@owner.text());

在上面的代码中,如果没有找到 owner 属性,那么 slurper 会设置一个空白字符串(“”)。

就我而言,我宁愿将其保留为 null 而不是设置空字符串。

是否可以将 Slurper 配置为不这样做?

0 投票
1 回答
612 浏览

java - 属性的 RestAssured 和 GPath 表达式不一致

我们使用 REST-assured 框架在 Java 中进行一些单元/集成测试。

来自 REST 服务的 XML 答案与此类似:

在我的测试中,我有兴趣通过读取这样的属性来检查返回的项目returned

而且效果很好

现在我还想用相同的逻辑控制 xmlns 中的 URN 是否正确:

但是当我的测试运行时,表达式Items.@xmlns似乎没有返回属性的值而是空的:[]

知道为什么这不起作用吗?

0 投票
3 回答
2277 浏览

xml - 如何使用父方法在 XML 树中导航回相邻的子元素

给定以下 XML:

为了找到正确的<resource>并得到它,price我执行以下操作:

但是结果是parent()没有实现find(Closure)与文档不完全匹配:http: //groovy.codehaus.org/gapi/groovy/util/slurpersupport/GPathResult.html

node.parent().size()当我期望它按照上面的 XML 返回 3 时,更奇怪的返回 1

我的问题:

  1. 我的代码是否正确,为什么不工作?

  2. 这是实现预期结果的最短途径吗?

  3. 为什么node.parent().size()返回 1 ?也一样node.parent().parent().size()node.parent().parent().parent().size()以此类推……

0 投票
0 回答
670 浏览

xml - Groovy XML:如何解析、修改和序列化 GSP 文件的内容。(org.xml.sax.SAXParseException,前缀未绑定)

在我问这个问题之前,我将提供一些关于我实际尝试做的事情的信息:

我需要在我的 grails 项目中重构大量 GSP 文件。在我尝试为此编写自己的 groovy 脚本后——并意识到这对于我目前的任何语言技能水平来说都太过分了——我发现了这篇文章,它对我解析 html 内容有很大帮助。

过了一会儿,我整理了自己的脚本来解析一个 html 文件,再次序列化它并将其保存到一个新文件中。这是我的脚本:

请注意,我不想在我的 GSP 文件中使用 XML 序言;因此,我使用正则表达式删除它(这不是我的问题,但如果有人知道更“时髦”的方式来做到这一点,请告诉我!)

此外,我设置namespacesFeature为 false,因为命名空间对我的目的没有用。

因为这就像 HTML 文件的魅力一样,我想我已经准备好递归地遍历我的文件夹并找到所有具有该名称的 GSP 文件list.gsp并自动重构它们。但是当我尝试用 one 测试它时,由于元素list.gsp的未绑定前缀,序列化失败:gg:set

The prefix "g" for element "g:set" is not bound.

现在,我有点明白我要做的不是 XML 解析和序列化的常规目的。但就我而言,我不仅希望禁用命名空间功能,还希望解析器忽略所有 GSP 标记并将它们视为常规的开始和结束标记;换句话说,忽略任何标签中的双点。

我关心的另一件事是表达语言,例如<%@ page import="<class>" %>. 现在我刚刚收到前面提到的异常,但这可能也需要解决。

非常感谢任何帮助。