Mercurial > hg > lxmldump
diff lxmldump.py @ 3:7ce08dea935b
Special case handling for Example elements.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Mon, 10 May 2021 12:24:10 +0300 |
parents | 0e5f705a895b |
children | 34a89d61dbe7 |
line wrap: on
line diff
--- a/lxmldump.py Mon May 03 13:39:25 2021 +0300 +++ b/lxmldump.py Mon May 10 12:24:10 2021 +0300 @@ -112,15 +112,24 @@ ### Main ### def pkk_recursive_dump(lnode, indent): - stmp = "" - if lnode.text != None: - tmp = str(lnode.text).strip() - if tmp != "": - stmp = " \""+ tmp +"\"" + if lnode.tag == "Example": + stmp = "".join(lnode.itertext()).strip() + print("{}{} \"{}\"".format(" " * indent, lnode.tag, stmp)) + else: + stmp = "" + if lnode.text != None: + tmp = str(lnode.text).strip() + if tmp != "": + stmp = " \""+ tmp +"\"" - print("{}{} {}{}".format(" " * indent, lnode.tag, lnode.attrib, stmp)) - for qnode in lnode.findall("./*"): - pkk_recursive_dump(qnode, indent + 1) + if len(lnode.attrib) > 0: + atmp = " "+str(lnode.attrib) + else: + atmp = "" + + print("{}{}{}{}".format(" " * indent, lnode.tag, atmp, stmp)) + for qnode in lnode.findall("./*"): + pkk_recursive_dump(qnode, indent + 1) for filename in pkk_filenames: