Commit 4315ee3b authored by Pavel Vainerman's avatar Pavel Vainerman

(python): Заменил в UniXML использование 'xml.dom.minidom' на 'lxml',

т.к. xml.dom.minidom портит список свойст (пересортировывает при сохранении)
parent ca698118
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
import sys import sys
import libxml2 import libxml2
import xml.dom.minidom as md from lxml import etree
import re import re
import os import os
# ----------------------------- # -----------------------------
...@@ -162,13 +162,13 @@ class UniXML(): ...@@ -162,13 +162,13 @@ class UniXML():
def pretty_save(self, filename): def pretty_save(self, filename):
context = self.doc.serialize(encoding="utf-8") context = self.doc.serialize(encoding="utf-8")
mdoc = md.parseString(context) mdoc = etree.XML(context)
s = mdoc.toprettyxml(encoding="utf-8").split("\n") s = etree.tostring(mdoc,pretty_print=True,encoding="UTF-8",method='xml',xml_declaration=True).split("\n")
out = open(filename,"w") out = open(filename,"w")
p = re.compile(r'\ [^\s]{1,}=""') p = re.compile(r'\ [^\s]{1,}=""')
for l in s: for l in s:
if l.strip(): if l.strip():
# удаяем пустые свойства prop="" # удаляем пустые свойства prop=""
l = p.sub('', l) l = p.sub('', l)
out.write(l+"\n") out.write(l+"\n")
out.close() out.close()
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment