JSON Exporter¶
-
class
anytree.exporter.jsonexporter.
JsonExporter
(dictexporter=None, maxlevel=None, **kwargs)[source]¶ Bases:
object
Tree to JSON exporter.
The tree is converted to a dictionary via dictexporter and exported to JSON.
Keyword Arguments: - dictexporter – Dictionary Exporter used (see
DictExporter
). - maxlevel (int) – Limit export to this number of levels.
- kwargs – All other arguments are passed to
json.dump
/json.dumps
. See documentation for reference.
>>> from anytree import AnyNode >>> from anytree.exporter import JsonExporter >>> root = AnyNode(a="root") >>> s0 = AnyNode(a="sub0", parent=root) >>> s0a = AnyNode(a="sub0A", b="foo", parent=s0) >>> s0b = AnyNode(a="sub0B", parent=s0) >>> s1 = AnyNode(a="sub1", parent=root)
>>> exporter = JsonExporter(indent=2, sort_keys=True) >>> print(exporter.export(root)) { "a": "root", "children": [ { "a": "sub0", "children": [ { "a": "sub0A", "b": "foo" }, { "a": "sub0B" } ] }, { "a": "sub1" } ] }
Note
Whenever the json output does not meet your expections, see the
json
documentation. For instance, if you have unicode/ascii issues, please try JsonExporter(…, ensure_ascii=False).- dictexporter – Dictionary Exporter used (see