An open API service indexing awesome lists of open source software.

https://github.com/danr/xmldestroyer

Bottom-up transformation of XML into python generators, XML, JSON or text.
https://github.com/danr/xmldestroyer

Last synced: 25 days ago
JSON representation

Bottom-up transformation of XML into python generators, XML, JSON or text.

Awesome Lists containing this project

README

          

xmldestroyer
============

This library does a bottom-up transformation of XML documents, extracting the
parts that are relevant for the task at hand, and either returning it as a
python generator, or serializing it to disk as XML (again!), JSON or text.

One design goal is to be able to process gigabyte-sized documents with constant
memory footprint.

Inspired by the Haskell libraries
`Scrap Your Boilerplate `__,
`uniplate `__ and
`geniplate `__.

Example, get the texts from all ``

`` tags in a document:

::

from xmldestroyer import xd
import sys

def p(text, _attrs, _children, _parents):
return text

infile, outfile = sys.args

xd(infile, outfile, p=p)

This outputs a text file with the text from all ``

`` tags, one per line.

Works with python 2.7, 3.3, 3.4 and 3.5.