Converts XML to Python objects
parent.child, attributes with element['attribute'].parse() method with a filename, an URL or an XML string.-, . and : with _ <foobar><foo-bar/></foobar> can be accessed with foobar.foo_bar, <foo.bar.baz/> can be accessed with foo_bar_baz and <foo:bar><foo:baz/></foo:bar> can be accessed with foo_bar.foo_bazWith pip:
pip install untangle
With conda:
conda install -c conda-forge untangle
Conda feedstock maintained by @htenkanen. Issues and questions about conda-forge packaging / installation can be done here.
(See and run examples.py or this blog post: Read XML painlessly for more info)
import untangle
obj = untangle.parse(resource)
resource can be:
Running the above code and passing this XML:
<?xml version="1.0"?>
<root>
<child name="child1"/>
</root>
allows it to be navigated from the untangled object like this:
obj.root.child['name'] # u'child1'
see CHANGELOG.md