Skip to main content

Yet another simple S3 management tool for python.

Project description

YAS3 - Yet Another S3 Client

Yas3 is a simple client for managing buckets/storage in S3 (and S3 compatible endpoints) for people who don't want the complexity of learning boto3.

Uploading Objects

You can upload from Object paths:

with yas3.Connection(access_key=ACCESS_KEY, secret_key=SECRET_KEY, endpoint=ENDPOINT) as conn:
    conn.upload('test.txt', 'Object.txt', bucket='bucket')

Or as bytes:

with yas3.Connection(access_key=ACCESS_KEY, secret_key=SECRET_KEY, endpoint=ENDPOINT) as conn:
    conn.upload(Object_bytes, 'Object.txt', bucket='bucket', type='application/octet-stream')

The Object type is guessed using mimetypes, but it can be easily specified using mimetype='text/json'.

Downloading Objects

You can download the Object locally:

with yas3.Connection(access_key=ACCESS_KEY, secret_key=SECRET_KEY, endpoint=ENDPOINT) as conn:
    conn.download('Object.txt', 'test.txt', bucket='bucket')

Or you can get the response directly:

with yas3.Connection(access_key=ACCESS_KEY, secret_key=SECRET_KEY, endpoint=ENDPOINT) as conn:
    bucket_data = conn.get('Object.txt', bucket='bucket')
    print(bucket_data)

Object Operations

Moving Objects:

with yas3.Connection(access_key=ACCESS_KEY, secret_key=SECRET_KEY, endpoint=ENDPOINT) as conn:
    conn.move('Object.txt', 'new_Object.txt', source_bucket='bucket', target_bucket='bucket')

Copying Objects:

with yas3.Connection(access_key=ACCESS_KEY, secret_key=SECRET_KEY, endpoint=ENDPOINT) as conn:
    conn.copy('Object.txt', 'new_Object.txt', source_bucket='bucket', target_bucket='bucket')

Deleting Objects:

with yas3.Connection(access_key=ACCESS_KEY, secret_key=SECRET_KEY, endpoint=ENDPOINT) as conn:
    conn.delete('Object.txt', bucket='bucket')

Listing Objects in a bucket

with yas3.Connection(access_key=ACCESS_KEY, secret_key=SECRET_KEY, endpoint=ENDPOINT) as conn:
    conn.list_Objects(bucket='bucket', prefix=None)

Using it as an object

If you want to create an object, feel free:

conn = yas3.Connection(...)
...
conn.close()

Full Docs

See the full API documentation here.

Project details


Release history Release notifications | RSS feed

This version

1.0

Download files

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

Source Distribution

yas3-1.0.tar.gz (4.5 kB view details)

Uploaded Source

Built Distribution

yas3-1.0-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

Details for the file yas3-1.0.tar.gz.

File metadata

  • Download URL: yas3-1.0.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.8.5

File hashes

Hashes for yas3-1.0.tar.gz
Algorithm Hash digest
SHA256 b2e466638e36711c88f41a47149526cfed53ca12761c266a6d39025e8c177225
MD5 7192640356d8062c5217fb426f0c6b2e
BLAKE2b-256 583f7278bd7bdebe116382b8b7dea1054c9514e1eda55061f0931844d3fb9ad1

See more details on using hashes here.

File details

Details for the file yas3-1.0-py3-none-any.whl.

File metadata

  • Download URL: yas3-1.0-py3-none-any.whl
  • Upload date:
  • Size: 9.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.8.5

File hashes

Hashes for yas3-1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 81be4298ba384f5cf9e6467eb0ac80c184d877587fff507035d23cbf45a9c717
MD5 c30e6622e184f5f9f86cba46aeb11f58
BLAKE2b-256 2b00f151a31b4095e741b8877ec40326f34bf1b9d0db35974f93418913ccab5a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page