Popularity
4.0
Growing
Activity
2.7
-
608
28
84

Description

OR

try the latest .deb

Code Quality Rank: L5
Programming language: Python
License: MIT License
Tags: HTML Manipulation    
Latest version: v1.1.0

untangle alternatives and similar packages

Based on the "HTML Manipulation" category.
Alternatively, view untangle alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of untangle or a related project?

Add another 'HTML Manipulation' Package

README

untangle

Build Status PyPi version

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.7 and 3.4, 3.5, 3.6, 3.7, 3.8 and pypy

Installation

With 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.

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