/keyedarchivelib

Generate and parse NSKeyedArchive files in Python (>=3.8)

Primary LanguagePythonGNU Lesser General Public License v3.0LGPL-3.0

keyedarchivelib

Basic Python (>=3.8) library to generate and parse NSKeyedArchive files.

Installation

Install with pip:

pip3 install keyedarchivelib

Usage

The keyedarchivelib module has the same interface as the plistlib standard library module:

load, loads, dump, and dumps have the same function signatures as plistlib minus the fmt option, which is not available since it's always binary.

The keyedarchivelib module includes type hints.

For convenience, examples are provided below:

Reading (load & loads)

from keyedarchivelib import load

with open("example.plist", 'rb') as fp:
    pl = load(fp)
print(pl["test"])

Writing (dump & dumps)

from keyedarchivelib import dump, dumps

example_dict = {
    "test": 1
}
with open("example.plist", 'wb') as fp:
    dump(example_dict, fp)

# ~~~ OR ~~~

print(dumps(example_dict))