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.
Metadata
Release files for yas3 1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| yas3-1.0.tar.gz | 4.5 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| yas3-1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 13.6 kB
Release files / yas3-1.0.tar.gz
| Download URL | yas3-1.0.tar.gz |
|---|---|
| Size | 4.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b2e466638e36711c88f41a47149526cfed53ca12761c266a6d39025e8c177225
|
|
BLAKE2b-256 checksum How to use checksums |
583f7278bd7bdebe116382b8b7dea1054c9514e1eda55061f0931844d3fb9ad1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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
|
Release files / yas3-1.0-py3-none-any.whl
| Download URL | yas3-1.0-py3-none-any.whl |
|---|---|
| Size | 9.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
81be4298ba384f5cf9e6467eb0ac80c184d877587fff507035d23cbf45a9c717
|
|
BLAKE2b-256 checksum How to use checksums |
2b00f151a31b4095e741b8877ec40326f34bf1b9d0db35974f93418913ccab5a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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
|
Security for yas3 1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.