Simple, quick Amazon AWS S3 interface in Python
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
simples3 Fix listdir bug from previous commit Jul 10, 2013
tests Add test coverage to streaming Dec 24, 2012
LICENSE Include tests in manifest Sep 6, 2010
README Update Apr 27, 2013
coders.rst Add list of authors Feb 10, 2011


##Overview A fairly simple, decently quick interface to Amazon's S3 storage service.

It grew out of frustration with other libraries that were either written too pragmatically (slow), too bloatedly, or just half-done.

The module aims for:

  • simplicity,
  • decent speed,
  • non-intrusiveness.

It really is designed to fit into programmer memory. The three basic operations are as easy as with dictionaries.


Requires Python 2.5+ and nose for running tests. Python 3 support is not yet available. Apart from that, the code relies solely on Python standard libraries.


pip install simples3


Access to a bucket is done via the S3Bucket class. It has three required arguments:

from simples3.bucket import S3Bucket

s = S3Bucket(bucket,
print s  
#<S3Bucket ... at ''>

To add a file, simply do

s.put("my file", "my content")

To retrieve a file do

f = s.get("my file")
#my content

To retrieve information about a file, do

print f.s3_info["mimetype"]

print f.s3_info.keys()
#['mimetype', 'modify', 'headers', 'date', 'size', 'metadata']

To delete a file, do

del s["my file!"]

For more detailed documentation, refer here


###IRC #sendapatch on