问题标签 [elementtree]

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 投票
3 回答
36045 浏览

python - 如何删除 etree 元素的属性?

我的 etree 元素具有一些属性 - 我们如何删除特定 etree 元素的属性。

0 投票
12 回答
31056 浏览

python - 可以告诉 ElementTree 保留属性的顺序吗?

我使用 ElementTree 在 python 中编写了一个相当简单的过滤器来处理一些 xml 文件的上下文。它或多或少都有效。

但它重新排序了各种标签的属性,我不希望它这样做。

有谁知道我可以抛出一个开关以使其保持指定的顺序?

上下文

我正在使用一个粒子物理工具,它有一个基于 xml 文件的复杂但奇怪的有限配置系统。以这种方式设置的许多东西包括各种静态数据文件的路径。这些路径被硬编码到现有的 xml 中,并且没有根据环境变量设置或更改它们的工具,并且在我们的本地安装中,它们必然位于不同的位置。

这不是一场灾难,因为我们使用的源代码和构建控制组合工具允许我们使用本地副本隐藏某些文件。但即使数据字段是静态的,xml 也不是,所以我编写了一个脚本来修复路径,但是本地和主版本之间的属性重新排列差异比必要的更难阅读。


这是我第一次尝试使用 ElementTree(而且只是我的第五个或第六个 python 项目)所以也许我做错了。

为简单起见,代码如下所示:

合理还是愚蠢?


相关链接:

0 投票
1 回答
11686 浏览

python - 用python过滤xml

我有以下 xml 文档:

我想过滤掉node2什么时候a1="x2"。用户提供需要测试和过滤掉的 xpath 和属性值。我查看了 Python 中的一些解决方案,例如 BeautifulSoup,但它们太复杂并且不保留文本的大小写。我想保持文档和以前一样,过滤掉一些东西。

你能推荐一个简单而简洁的解决方案吗?从外观上看,这不应该太复杂。实际的xml文档并不像上面那么简单,但是思路是一样的。

0 投票
3 回答
155 浏览

python - 如何防止 lxml 舞会压缩元素?

具有以下 Python 代码:

如何强制 lxml 使用“长”版本?

0 投票
3 回答
2262 浏览

python - SyntaxError 使用 gdata-python-client 访问 Google Book Search Data API

这是一个最小的示例——特别是,包中包含的图书服务单元测试也因完全相同的错误而失败。我查看了wiki 并在 Google Code 上打开了问题单,但无济于事(在我看来,这对我来说更容易成为一个愚蠢的错误,而不是图书馆的问题)。我不确定如何解释错误消息。如果重要的话,我使用的是 python 2.6.5 和最新版本的 gdata,即 2.0.10。

0 投票
2 回答
195 浏览

python - 如何使用 Elementree 更新 XML 中标签的文本

使用 elementree,读取标签文本的最简单方法是执行以下操作:

现在我想更新同一个文件中的文本,希望不必用简单的东西重新编写它:

有任何想法吗?

提前谢谢克里斯托弗

0 投票
2 回答
4629 浏览

python - Python + Expat:实体上的错误

我写了一个小函数,它使用 ElementTree 和 xpath 来提取 xml 文件中某些元素的文本内容:

第三次测试失败,但有以下异常:

ExpatError:引用无效字符号:第 1 行,第 13 列

实体是�非法的 XML 吗?不管是不是,我要解析的文件都包含它,我需要一些方法来解析它们。对于除 Expat 之外的其他解析器或 Expat 的设置有什么建议可以让我这样做吗?


更新:我刚刚发现了BeautifulSoup,一个标签汤解析器,如下面的答案评论中所述,为了好玩,我回到这个问题并尝试将它用作 ElementTree 前面的 XML 清理器,但它尽职尽责地将其转换�为一个同样无效的空字节。:-)

...产量

不过,在我的特殊情况下,我并不真正需要 XPath 解析,我可以使用 BeautifulSoup 本身及其非常简单的节点寻址样式parsed_tree.test.elem1.contents[0]

0 投票
3 回答
3360 浏览

python - 在 Python ElementTree 中,如何获取树中元素的所有祖先的列表?

我需要“get_ancestors_recursively”函数。
样品运行可以是

有人可以帮我吗?

0 投票
2 回答
3396 浏览

python - 无法使用 Python 有效地解析 XML

给出错误,我实际上想从谷歌天气 xml 站点标签中查找值

0 投票
4 回答
38078 浏览

python - Python 2.5.4 - ImportError:没有名为 etree.ElementTree 的模块

我在 Windows 上运行 Python 2.5.4,并且在尝试导入 ElementTree 或 cElementTree 模块时不断收到错误消息。代码非常简单(我正在学习教程):

当我从 cmd 运行它时会收到错误消息,或者当我直接从 Python 解释器尝试它时不会收到错误消息。

另外,我检查了模块在 C:\Python25\Lib\xml\etree 中