plists

A package for managing Apple plist files.


License
Other
Install
pip install plists==0.0.4

Documentation

What is this?

This is a package for reading, writing and managing Apple plist files.

Installation

pip install plists

Examples

Reading plist files

Reading V1 (Old Style) plists from file

import plists

obj = plists.v1parser.Parser().parseFile("path_to_file")

# ... use obj as a normal python object

Reading V1 (Old Style) plists from string

import plists

obj = plists.v1parser.Parser().parse("some_loaded_string")

# ... use obj as a normal python object

Reading XML plists from file

from plists import xmlparser

obj = xmlparser.parseFile("path_to_file")

# ... use obj as a normal python object

Reading XML plists from string

from plists import xmlparser

obj = xmlparser.parse("some_loaded_string")

# ... use obj as a normal python object

Reading Binary plists

Coming Soon

Writing objects to plist files

Writing to Old style plists

Objects can be written to old style plists with:

from plists import v1parser
from plists import v1writer

obj = v1parser.parseFile(<path_to_plist_file>)

v1writer.write(obj, outstream, indentString, level)

The parameters are:

  • obj - The object being serialized
  • outstream - The output stream to which the object will be serialized. If this is None, then a new string outputstream is written to and returned.
  • indentString - Indentation string to be used. If this value is None then no indentation or pretification is applied. Otherwise this is used.
  • level - The level to start with when serializing. Each child node is indented an extra level (if indentString is not None).

Writing to XML plists

Objects can be written to xml plists with:

from plists import xmlparser
from plists import xmlwriter

obj = xmlparser.parseFile(<path_to_plist_file>)

xmlwriter.write(obj, outstream, indentString, level)

The parameters are:

  • obj - The object being serialized
  • outstream - The output stream to which the object will be serialized. If this is None, then a new string outputstream is written to and returned.
  • indentString - Indentation string to be used. If this value is None then no indentation or pretification is applied. Otherwise this is used.
  • level - The level to start with when serializing. Each child node is indented an extra level (if indentString is not None).

Writing to Binary plists

Coming Soon.