Asynchronous MinIO Client SDK for Python
Project description
miniopy-async
Asynchronous MinIO Client SDK for Python
Catalogue
Declaration
- This project is based on Huseyn Mashadiyev's minio-async 1.0.0.
- This project has fixed some bugs of minio-async and added some new features.
- Miniopy-async 1.2 has been pulled requests to minio-async.
Minimum Requirements
- Python>3.6
Build from source
git clone https://github.com/hlf20010508/miniopy-async.git
cd miniopy-async
python setup.py install
Installation
Install with pip
PyPI
pip install miniopy-async
Github Repository
pip install git+https://github.com/hlf20010508/miniopy-async.git
Install with pipenv
PyPI
pipenv install miniopy-async
Github Repository
pipenv install git+https://github.com/hlf20010508/miniopy-async.git#egg=miniopy-async
Quick Start
from miniopy_async import Minio
import asyncio
client = Minio(
"play.min.io",
access_key="Q3AM3UQ867SPQQA43P2F",
secret_key="zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG",
secure=True # http for False, https for True
)
async def main():
url = await client.presigned_get_object("my-bucket", "my-object")
print('url:', url)
loop = asyncio.get_event_loop()
loop.run_until_complete(main())
loop.close()
from sanic import Sanic, response
from miniopy_async import Minio
from urllib import parse
app = Sanic(__name__)
client = Minio(
"play.min.io",
access_key="Q3AM3UQ867SPQQA43P2F",
secret_key="zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG",
secure=True # http for False, https for True
)
# http://127.0.0.1:8000/download?bucket=my-bucket&fileName=testfile
@app.route('/download', methods=['GET'])
async def download(request):
print('downloading ...')
bucket=request.args.get('bucket')
fileName=request.args.get('fileName')
# decodeURI, for those which has other language in fileName, such as Chinese, Japanese, Korean
fileName = parse.unquote(fileName)
url = await client.presigned_get_object(bucket_name=bucket, object_name=fileName)
return response.redirect(url)
More References
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
miniopy-async-1.17.tar.gz
(63.2 kB
view details)
Built Distribution
File details
Details for the file miniopy-async-1.17.tar.gz
.
File metadata
- Download URL: miniopy-async-1.17.tar.gz
- Upload date:
- Size: 63.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 91fdd3799c0a87187bad6a128b0d6dbceb0206a8c9766c14514f8c2028d5c450 |
|
MD5 | e220a42acff3b73ff5de24830c587245 |
|
BLAKE2b-256 | 3b811ba95d04fb3e542ded01aea9a55fb8f6076b8146e4234948a6bfafab0f1b |
File details
Details for the file miniopy_async-1.17-py3-none-any.whl
.
File metadata
- Download URL: miniopy_async-1.17-py3-none-any.whl
- Upload date:
- Size: 82.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a70e180fa7ec62dfee94d1f1c101646665cfeeeb5ce598cfb7935294a78176b4 |
|
MD5 | 31efc790c9bb8180307234f90ab55b60 |
|
BLAKE2b-256 | 64d77d86a51f93c964b24baf0fdb5cae5106ea1aded9572e627baa377b9ed179 |