From to Python. Based on work done by Frank Timmermann1. See license.txt.


% python install

And either import the (documented) class:

>>> from pydelicious import DeliciousAPI
>>> api = DeliciousAPI('username', 'password', 'encoding')

or use the functions on the module, listed below. Please do report any bugs.


Access to the web service API is implemented in In addition the script tools/ can manage a local collection of bookmarks.

The API class can be used directly:

>>> from pydelicious import DeliciousAPI; from getpass import getpass
>>> pwd = getpass('Pwd:')
>>> a = DeliciousAPI('user', pwd)
>>> # Either succeeds or raises DeliciousError or subclass:
>>> a.posts_add("", "title", extended="description", tags="my tags")
>>> len(a.posts_all()['posts'])
>>> a.tags_get() # or: a.request('tags/get')
{'tags': [{'count': '1', 'tag': 'my'}, {'count': '1', 'tag': 'tags'}]}
>>> a.posts_update()
{'update': {'time': (2008, 11, 28, 2, 35, 51, 4, 333, -1)}}
>>> # Either succeeds or raises DeliciousError or subclass:
>>> a.posts_delete("")
>>> len(a.posts_all()['posts'])

Or by calling one of the methods on the module. These are functions that wrap common API calls. The signature is 'user', 'passwd' followed by the API method arguments.

These are short functions for getrss calls:


For code documentation see doc/pydelicious or doc/ For TODO's, progress reports, etc. see HACKING.

Note that for non-pydelicious related questions there is also a user discussion list at yahoo.


Originally written by Frank Timmermann and hosted at: <> (defunkt).

[1] Google Code, pydelicious (