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'     : '',
...          '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': '',
 '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 ="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- (5.2 kB view hashes)

Uploaded source

Built Distribution

atomstorage- (8.3 kB view hashes)

Uploaded 2 4

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page