【发布时间】:2013-10-17 18:46:40
【问题描述】:
我有一个xml文件如下
<Person>
<name>
My Name
</name>
<Address>My Address</Address>
</Person>
标签有额外的新行,是否有任何快速的 Pythonic 方法来修剪它并生成新的 xml。
我找到了这个,但它只修剪标签之间而不是值 https://skyl.org/log/post/skyl/2010/04/remove-insignificant-whitespace-from-xml-string-with-python/
更新 1 - 处理在 <name> 标记中有尾部空格的以下 xml
<Person>
<name>
My Name<shortname>My</short>
</name>
<Address>My Address</Address>
</Person>
两种xml都接受的答案句柄
更新 2 - 我在下面的答案中发布了我的版本,我正在使用它来删除所有类型的空格并在带有 xml 编码的文件中生成漂亮的 xml
【问题讨论】:
-
使用 JSON 可能会更成功
-
@Temere 这正被其他应用程序使用,在我的 python 程序进行验证之前
-
您的附加示例(已接受的答案不起作用)格式不正确。注意开始和结束标签。顺便说一句,你正在“移动球门柱”。我认为你应该问一个新问题。
-
@mzjn 是的,我本可以提出不同的问题,但我认为这是相关的,因此如果此线程本身存在最佳解决方案,那就太好了。我已经在回答 stackoverflow.com/a/19396130/973699 中发布了我的版本
-
@mzjn 我刚读到这个,下次我会注意的。 meta.stackexchange.com/questions/153360/…
标签: python xml python-2.7 xml-parsing lxml