Skip to main content
Help us improve Python packaging – donate today!

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.

Release history Release notifications

This version
History Node

0.1.2.1

History Node

0.1.2

History Node

0.1.1dev

History Node

0.1dev

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
atomstorage-0.1.2.1-py2.4.egg (8.3 kB) Copy SHA256 hash SHA256 Egg 2.4 Sep 25, 2006
atomstorage-0.1.2.1.tar.gz (5.2 kB) Copy SHA256 hash SHA256 Source None Sep 25, 2006

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page