Converts XML to Python objects
Python XSLT Makefile Shell
Latest commit fef80cf Jul 20, 2016 Christian Stefanescu Removed PyPi download icon

README.md

untangle

Build Status Code Quality Coverage Status PyPi version

Join the chat at https://gitter.im/stchris/untangle

Documentation

  • Converts XML to a Python object.
  • Siblings with similar names are grouped into a list.
  • Children can be accessed with parent.child, attributes with element['attribute'].
  • You can call the parse() method with a filename, an URL or an XML string.
  • Substitutes -, . 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_baz
  • Works with Python 2.5, 2.6, 2.7 and 3.3, 3.4, 3.5 and pypy

Installation

pip install untangle

OR

try the latest .deb

Usage

(See and run examples.py or this blog post: Read XML painlessly for more info)

import untangle
obj = untangle.parse(resource)

resource can be:

  • a URL
  • a filename
  • an XML string

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'

Changelog

see CHANGELOG.md