A class to write well-formed and nicely indented XML.
Use like this:
w = XMLWriter(fh)
with w.tag('html'):
with w.tag('body'):
w.data('This is the content')
Which produces:
<html>
<body>
This is the content
</body>
</html>
Methods Summary
comment(comment) | Adds a comment to the output stream. |
end([tag, indent, wrap]) | Closes the current element (opened by the most recent call to start). |
start(tag[, attrib]) | Opens a new element. |
get_indentation_spaces([offset]) | Returns a string of spaces that matches the current indentation level. |
element(tag[, text, wrap, attrib]) | Adds an entire element. |
tag(*args, **kwds) | A convenience method for use with the with statement:: with writer.tag(‘foo’): writer.element(‘bar’) # </foo> is implicitly closed here Parameters are the same as to start. |
object_attrs(obj, attrs) | Converts an object with a bunch of attributes on an object into a dictionary for use by the XMLWriter. |
flush() | |
close(id) | Closes open elements, up to (and including) the element identified by the given identifier. |
get_indentation() | Returns the number of indentation levels the file is currently in. |
data(text) | Adds character data to the output stream. |
Methods Documentation
Adds a comment to the output stream.
Parameters : | comment : str
|
---|
Closes the current element (opened by the most recent call to start).
Parameters : | tag : str
|
---|
Opens a new element. Attributes can be given as keyword arguments, or as a string/string dictionary. The method returns an opaque identifier that can be passed to the close() method, to close all open elements up to and including this one.
Parameters : | tag : str
attrib : dict of str -> str
|
---|---|
Returns : | id : int
|
Returns a string of spaces that matches the current indentation level.
Adds an entire element. This is the same as calling start, data, and end in sequence. The text argument can be omitted.
A convenience method for use with the with statement:
with writer.tag('foo'):
writer.element('bar')
# </foo> is implicitly closed here
Parameters are the same as to start.
Converts an object with a bunch of attributes on an object into a dictionary for use by the XMLWriter.
Parameters : | obj : object
attrs : sequence of str
|
---|---|
Returns : | attrs : dict
|
Closes open elements, up to (and including) the element identified by the given identifier.
Parameters : | id : int
|
---|
Returns the number of indentation levels the file is currently in.
Adds character data to the output stream.
Parameters : | text : str
|
---|