Skip to main content

API for storing and retrieving Atom entries.

Project description

This module defines a simple API for storing and retrieving Atom entries in different storage backends. Entries are defined using a JSON-like syntax:

>>> import datetime
>>> entry = {'id'     : 'http://example.com/1',
...          'title'  : 'My first entry',
...          'updated': datetime.datetime.utcnow(),
...         }

The module comes with a shelve backend:

>>> from atomstorage import EntryManager
>>> em = EntryManager('shelve://file.db')
>>> em.create_entry(entry)
{'updated': datetime.datetime(2006, 8, 15, 16, 27, 7, 960677),
 'id': 'http://example.com/1',
 'title': 'My first entry'}

New backends can be easily added by creating a module and setting an atomstorage.backend entry point. A SQLite backend is currently being developed.

The API defines a few methods the entry manager should have. To retrieve all entries, sorted by time (last to first):

>>> entries = em.get_entries()

The last 10 entries:

>>> entries = em.get_entries(10)

Retrieve the entry with id “1”:

>>> entry = em.get_entry("1")

Delete the same entry:

>>> em.delete_entry("1")

Get all entries from August 2006:

>>> entries = em.get_entries_by_date(2006, 8)

Or from the “tech” category:

>>> entries = em.get_entries_by_category("tech")

To search for entries mentioning “Python”:

>>> entries = em.search("Python")

The API is by no means final. Comments, suggestions, patches and critics are welcome.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

atomstorage-0.1.2.1.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

atomstorage-0.1.2.1-py2.4.egg (8.3 kB view details)

Uploaded Source

File details

Details for the file atomstorage-0.1.2.1.tar.gz.

File metadata

File hashes

Hashes for atomstorage-0.1.2.1.tar.gz
Algorithm Hash digest
SHA256 4b91350344ef9e7018e3c84b34cc831f17737b19a88d866c48352d21d7dcd6bf
MD5 1ff7a295d75ebc25cadaaf0097f73724
BLAKE2b-256 15120c11d23a6bce92f6e11f0a97c5f973e3f5ebaa480b6aedc0895dd415152c

See more details on using hashes here.

File details

Details for the file atomstorage-0.1.2.1-py2.4.egg.

File metadata

File hashes

Hashes for atomstorage-0.1.2.1-py2.4.egg
Algorithm Hash digest
SHA256 d88baf846757411fd44290ff47df9274c5a606306134f65de148427bc67cdf17
MD5 07ae89a8ebf62aac27c83588dd663461
BLAKE2b-256 ec3453240e9feda9189c1e1f9a94dd3bc9c34985791f9ea418a01a0860029e86

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page