Skip to content

Instantly share code, notes, and snippets.

@frruit
Created September 7, 2016 10:45
Show Gist options
  • Save frruit/f4d1faad011e3d506f04658fca846eea to your computer and use it in GitHub Desktop.
Save frruit/f4d1faad011e3d506f04658fca846eea to your computer and use it in GitHub Desktop.
Remove the namespace from xml tags
from io import StringIO
import sys
from lxml import objectify, etree
ns = '{http://autosar.org/X.X.X}'
file = r'demo_swc.arxml'
file2 = file.replace('demo_swc.arxml', 'demo_swc_without_ns.arxml')
with open(file) as f:
xml_in = f.read()
f.close()
parser = etree.XMLParser(ns_clean=True)
root = etree.fromstring(xml_in, parser=parser)
def remove_namespace():
for elem in root.getiterator():
if elem.tag.startswith(ns):
elem.tag = elem.tag.replace(ns, '')
remove_namespace()
for elem in root.findall('.//ADMIN-DATA'):
parent = elem.getparent()
parent.remove(elem)
tree = etree.ElementTree(root)
tree.write(file2, pretty_print=True)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment