Biblioteca para gerenciamento de diretórios e arquivos
Project description
KassStorager
Instalação
pip install KassStorager
Suporte
Ha suporte para uso local e para uso com Aws S3.
Como usar?
Diretórios
Criar um diretório em um storage especifico. Ex: "./storage_root".
from KassStorager import Storager
Storager('storage_root').make('src')
# ira criar um diretorio '/src' em '/storage_root'
Selecionar um diretorio dentro do storage.
from KassStorager import Storager
Storager('storage_root').getDir('src')
Para verificar se um diretorio existe.
from KassStorager import Storager
result = Storager('storage_root').getDir('src').exists()
# result = False ou True
Para excluir um diretorio.
from KassStorager import Storager
Storager('storage_root').getDir('src').delete()
Caso o diretório não esteja vazio, e mesmo assim ainda queira forçar, passe o parametro 'force';
from KassStorager import Storager
Storager('storage_root').getDir('src').delete(force=True)
Limpar um diretório mantendo ele.
from KassStorager import Storager
Storager('storage_root').getDir('src').cleanDir()
Arquivos
Deletar um arquivo especifico de um diretorio
from KassStorager import Storager
Storager('storage_root').getDir('src').deleteFile('arquivo.txt')
Copiar todos os arquivos de um diretório para outro. Ex: "./storage_root/src" => "./storage_root_2".
from KassStorager import Storager
storage2 = Storager('storage_root_2').getDir()
Storager('storage_root').getDir('src').getFile(ext="*").copyTo(storage2)
Copiar somente um tipo de arquivo de um diretório para outro. Ex: "./storage_root/src" => "./storage_root_2".
from KassStorager import Storager
storage2 = Storager('storage_root_2').getDir()
Storager('storage_root').getDir('src').getFile(ext="csv").copyTo(storage2)
Copiar somente os arquivos com nome que atendam todos os filtros informados de um diretório para outro. Ex: "./storage_root/src" => "./storage_root_2".
from KassStorager import Storager
storage2 = Storager('storage_root_2').getDir()
Storager('storage_root').getDir('src').getFile(filters=["01-02","2024","file"]).copyTo(storage2)
Para mover arquivos utilize o metodo 'moveTo' no lugar de 'copyTo'.
from KassStorager import Storager
storage2 = Storager('storage_root_2').getDir()
Storager('storage_root').getDir('src').getFile(ext="csv", filters=["01-02","2024","file"]).moveTo(storage2)
Como usar? (S3)
Para uso com AWS S3, basta informar na criação do storage os dados de conexao com bucket e o driver 's3', como abaixo.
from KassStorager import Storager
conns3 = {
"bucket": 'seu_bucket',
"access_key": 'sua_chave_de_acesso'
"secret_key": 'sua_senha',
}
driver = 's3'
storage = 'dir_no_s3'
Storager(storage=storage, driver=driver, config=conns3)
Demais métodos de manipulação de diretórios e arquivos seguem como dito na sessão Como usar?
Envio 'LOCAL' para 'S3' e 'S3' para 'LOCAL'
Pasta informar o storage local e o de destino.
from KassStorager import Storager
# conexão com S3
conns3 = {
"bucket": 'seu_bucket',
"access_key": 'sua_chave_de_acesso'
"secret_key": 'sua_senha',
}
driver = 's3'
storagerS3 = 'dir_no_s3'
Envio local para S3:
storageS3 = Storager(storage=storage, driver=driver, config=conns3).get_dir()
Storager('storage_root').getDir('src').getFile(filters=["01-02","2024","file"]).copyTo(storageS3)
E ao contrario:
storageLocal = Storager('storage_root').get_dir()
Storager(storage=storagerS3, driver=driver, config=conns3).getDir().getFile(ext="*").copyTo(storageLocal)
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
Built Distribution
File details
Details for the file kassstorager-1.0.0.tar.gz
.
File metadata
- Download URL: kassstorager-1.0.0.tar.gz
- Upload date:
- Size: 6.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.7.1 CPython/3.11.4 Windows/10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a1fb12dca5f1b830c8daddc028c4f7d7d00389c13b611e37324ccfdb9ce70687 |
|
MD5 | 5ed5fba7a3cc51b7f1436391f00c861b |
|
BLAKE2b-256 | ecf8fa7fdf3ccfd6cee2de2308cf18ddae51ff7bf75a3418dbb5748705745435 |
File details
Details for the file kassstorager-1.0.0-py3-none-any.whl
.
File metadata
- Download URL: kassstorager-1.0.0-py3-none-any.whl
- Upload date:
- Size: 7.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.7.1 CPython/3.11.4 Windows/10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 11859bc67c5db5e62b39601cb129bc2822d67f55009e95a03a9e0d650e22cf47 |
|
MD5 | afaec7a278c231ba9b34d890b6729df8 |
|
BLAKE2b-256 | 2b1a21ed309efea63cd6dd2d0a478421fbf0257dd0dea78e8b28c5e619ec4fad |