{ "info": { "author": "Kenneth Reitz, Jacobi Petrucciani", "author_email": "jacobi@mimirhq.com", "bugtrack_url": null, "classifiers": [ "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy" ], "description": "BucketStore: A simple Amazon S3 Client, for Python.\n===================================================\n\n.. image:: https://travis-ci.org/jpetrucciani/bucketstore.svg?branch=master\n :target: https://travis-ci.org/jpetrucciani/bucketstore\n\n\n.. image:: https://badge.fury.io/py/bucketstore.svg\n :target: https://badge.fury.io/py/bucketstore\n :alt: PyPI version\n\n\n.. image:: https://img.shields.io/badge/code%20style-black-000000.svg\n :target: https://github.com/ambv/black\n :alt: Code style: black\n\n\n.. image:: https://img.shields.io/badge/python-3.5+-blue.svg\n :target: https://www.python.org/downloads/release/python-350/\n :alt: Python 3.5+ supported\n\n\n**BucketStore** is a very simple Amazon S3 client, written in Python. It\naims to be much more straight-forward to use than boto3, and specializes\nonly in Amazon S3, ignoring the rest of the AWS ecosystem.\n\n\nFeatures\n--------\n\n- Treats S3 Buckets as Key/Value stores.\n- Automatic support for ``AWS_ACCESS_KEY_ID``, ``AWS_SECRET_ACCESS_KEY``, and ``AWS_DEFAULT_REGION`` environment variables.\n- Easily make keys (or entire buckets) publically accessable.\n- Easily get the public URL for a given key.\n- Generates temporary URLs for a given key.\n- Use S3 in a pythonic way!\n\nUsage\n-----\n\nInstallation\n^^^^^^^^^^^^\n\n::\n\n $ pip install bucketstore\n\nGet (or create) a bucket, easily:\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n.. code-block:: python\n\n import bucketstore\n\n # Create the bucket if it doesn't exist.\n bucket = bucketstore.get('bucketstore-playground', create=True)\n\n\nTreat the bucket like a key/value store:\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n.. code-block:: pycon\n\n >>> bucket\n \n\n # get/set using array syntax\n >>> bucket['foo'] = 'bar'\n >>> bucket['foo']\n bar\n\n # get/set using methods\n >>> bucket.set('foo2', 'bar2')\n >>> bucket.get('foo2')\n bar2\n\n # list keys\n >>> bucket.list()\n [u'foo', u'foo2']\n\n # all keys\n >>> bucket.all()\n [, ]\n\n # check if a key exists in the bucket\n >>> 'foo' in bucket\n True\n\n # delete keys in the bucket\n >>> del bucket['foo2']\n {}\n\n\nInteract with S3 keys:\n^^^^^^^^^^^^^^^^^^^^^^\n\n.. code-block:: pycon\n\n >>> bucket.key('foo')\n \n\n >>> foo = _\n >>> foo.set('new value')\n\n # Generate a temporary share URL.\n >>> foo.temp_url(duration=1200)\n u'https://bucketstore-playground.s3.amazonaws.com/foo?AWSAccessKeyId=AKIAI2RVFNXIW7WS66QQ&Expires=1485493909&Signature=L3gD9avwQZQO1i11dIJXUiZ7Nx8%3D'\n\n # Make key publically accessable.\n >>> foo.make_public()\n >>> foo.url\n 'https://s3.amazonaws.com/bucketstore-playground/foo'\n\n # Get / set metadata for key.\n >>> foo.meta = {'foo': 'bar'}\n >>> foo.meta\n {'foo': 'bar}\n\n # Rename key to 'foo3'.\n >>> foo.rename('foo3')\n\n # Delete the key.\n >>> foo.delete()\n\n # Create a key with a content type\n >>> foo = bucket.key('foo.html')\n >>> foo.set('

bar

', content_type='text/html')\n\n # upload to key\n >>> bucket.key('test.py').upload('/tmp/test.py')\n\n # or upload with a file-like object! (make sure it's open in binary mode)\n >>> with open('/tmp/test.py', 'rb') as file:\n >>> bucket.key('test.py').upload(file)\n\n # download to file\n >>> bucket.key('test.py').download('/tmp/test.py')\n\n # or download to a file-like object! (make sure it's open in binary mode)\n >>> with open('/tmp/test.py', 'wb') as file:\n >>> bucket.key('test.py').download(file)\n\n # size of key\n >>> bucket.key('test.py').size()\n >>> len(bucket.key('test.py'))\n 15\n\n\nOther methods include ``bucketstore.login(access_key_id, secret_access_key)``, ``bucketstore.list()``, and ``bucketstore.get(bucket_name, create=False)``.\n\nTests\n-----\n\nTests are run through Tox_.\n\n.. code-block:: shell\n\n # Run tests against all environments.\n $ tox\n # Run against a specific version.\n $ tox -e py36\n # Run with pytest arguments.\n $ tox -- --pdb\n\n.. _Tox: https://tox.readthedocs.io/en/latest/\n\n\n\u2728\ud83c\udf70\u2728", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/jpetrucciani/bucketstore", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "bucketstore", "package_url": "https://pypi.org/project/bucketstore/", "platform": "", "project_url": "https://pypi.org/project/bucketstore/", "project_urls": { "Homepage": "https://github.com/jpetrucciani/bucketstore" }, "release_url": "https://pypi.org/project/bucketstore/0.2.1/", "requires_dist": null, "requires_python": "", "summary": "A simple library for interacting with Amazon S3.", "version": "0.2.1" }, "last_serial": 5914266, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "5b79c7e5179638964794e2e351c22d4c", "sha256": "05d3847b1115c6316cb377913bc1ecfdc087ce7eb1cc29b6a29719bc5d2bc836" }, "downloads": -1, "filename": "bucketstore-0.1.0-py2-none-any.whl", "has_sig": false, "md5_digest": "5b79c7e5179638964794e2e351c22d4c", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 4621, "upload_time": "2017-01-27T18:11:22", "url": "https://files.pythonhosted.org/packages/d6/91/638617358d0ac49343eb71d3615ba29feb7b2e225ed11cc4c275c35d03ba/bucketstore-0.1.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b5a7488ea52961bec4ec0d0bfaa9dd80", "sha256": "51b3dba38697e4296796a1397c59d12924b77701a63cd7415233b1ab862d80e1" }, "downloads": -1, "filename": "bucketstore-0.1.0.tar.gz", "has_sig": false, "md5_digest": "b5a7488ea52961bec4ec0d0bfaa9dd80", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3097, "upload_time": "2017-01-27T18:11:20", "url": "https://files.pythonhosted.org/packages/10/4c/e13cd018780486f93817d6dbea4c58a184da1b09f128f078fdc6a0233e27/bucketstore-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "a9597a3577aca07f73df4cc3c4260427", "sha256": "f9088fe789a782d8a506b794f4df91312a124c61980abc14b9bd0d231c95515e" }, "downloads": -1, "filename": "bucketstore-0.1.1-py2-none-any.whl", "has_sig": false, "md5_digest": "a9597a3577aca07f73df4cc3c4260427", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 5176, "upload_time": "2017-01-27T21:04:03", "url": "https://files.pythonhosted.org/packages/f5/85/b1923fa4cda204fdbb6bd9b6c8e6d73876383b837f2c65c11a33e4d7fce9/bucketstore-0.1.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6707a18c50f217b19d99ee95b8d380f6", "sha256": "4d5f06f8a18af9928b1be141b43f8158aa7679782bea0cce9f5059f56ac0d765" }, "downloads": -1, "filename": "bucketstore-0.1.1.tar.gz", "has_sig": false, "md5_digest": "6707a18c50f217b19d99ee95b8d380f6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3444, "upload_time": "2017-01-27T21:04:01", "url": "https://files.pythonhosted.org/packages/3c/ef/abc8f1a2deb38c5ed643aad0471b5b581bfe545bf4832c7d34b9c259062d/bucketstore-0.1.1.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "0a675d543c4fcd7ddf5697407dde01ed", "sha256": "b1fd20adb3c1e09b64872fc7571d955b49b8a5868118c0ec0789d0935114b490" }, "downloads": -1, "filename": "bucketstore-0.1.3-py2-none-any.whl", "has_sig": false, "md5_digest": "0a675d543c4fcd7ddf5697407dde01ed", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 5703, "upload_time": "2017-04-19T15:52:51", "url": "https://files.pythonhosted.org/packages/4e/1f/5f0bb1595b5319ff2cac11beeb80c49a29ca01c642398d4ec4c5eb1687d7/bucketstore-0.1.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8e70fbb388bfe931389b60e80110bd7b", "sha256": "3fc2721ca91b3d6cd16b9214c6d3be7bd97b12201e936a9475ba0320fdd72f00" }, "downloads": -1, "filename": "bucketstore-0.1.3.tar.gz", "has_sig": false, "md5_digest": "8e70fbb388bfe931389b60e80110bd7b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3865, "upload_time": "2017-04-19T15:52:50", "url": "https://files.pythonhosted.org/packages/ae/fb/da126368bcc1bf8a74d3abf73da5f6b720d6bef1e0d1b1409d24bd61e90b/bucketstore-0.1.3.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "2e6250a8bdbe2632f97acf0207c37020", "sha256": "ce3f26d5cf7637d56c735c51f3d50bbaa8bc6114d1958b21388797ab3128bfbb" }, "downloads": -1, "filename": "bucketstore-0.2.0.tar.gz", "has_sig": false, "md5_digest": "2e6250a8bdbe2632f97acf0207c37020", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5189, "upload_time": "2019-07-19T19:44:18", "url": "https://files.pythonhosted.org/packages/2e/ca/26664e56b6a7cae5ce30ee98c2cce73ed87b7c4df4c9f1e6e82388e3ab51/bucketstore-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "0d5d8ab52415ad558a6f26058de7e0f3", "sha256": "36c05bfce26eeaea24a8b6a9900de695c2f0f2654594a047ebf3a8f5062d91fa" }, "downloads": -1, "filename": "bucketstore-0.2.1.tar.gz", "has_sig": false, "md5_digest": "0d5d8ab52415ad558a6f26058de7e0f3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5747, "upload_time": "2019-10-01T18:59:23", "url": "https://files.pythonhosted.org/packages/bd/c5/d88b08fe93bd54a9821295adf4a32cd188b2951354569e406ba673b01d7f/bucketstore-0.2.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0d5d8ab52415ad558a6f26058de7e0f3", "sha256": "36c05bfce26eeaea24a8b6a9900de695c2f0f2654594a047ebf3a8f5062d91fa" }, "downloads": -1, "filename": "bucketstore-0.2.1.tar.gz", "has_sig": false, "md5_digest": "0d5d8ab52415ad558a6f26058de7e0f3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5747, "upload_time": "2019-10-01T18:59:23", "url": "https://files.pythonhosted.org/packages/bd/c5/d88b08fe93bd54a9821295adf4a32cd188b2951354569e406ba673b01d7f/bucketstore-0.2.1.tar.gz" } ] }