Skip to main content

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


Download files

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

Source Distribution

kassstorager-1.0.0.tar.gz (6.7 kB view details)

Uploaded Source

Built Distribution

kassstorager-1.0.0-py3-none-any.whl (7.9 kB view details)

Uploaded Python 3

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

Hashes for kassstorager-1.0.0.tar.gz
Algorithm Hash digest
SHA256 a1fb12dca5f1b830c8daddc028c4f7d7d00389c13b611e37324ccfdb9ce70687
MD5 5ed5fba7a3cc51b7f1436391f00c861b
BLAKE2b-256 ecf8fa7fdf3ccfd6cee2de2308cf18ddae51ff7bf75a3418dbb5748705745435

See more details on using hashes here.

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

Hashes for kassstorager-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 11859bc67c5db5e62b39601cb129bc2822d67f55009e95a03a9e0d650e22cf47
MD5 afaec7a278c231ba9b34d890b6729df8
BLAKE2b-256 2b1a21ed309efea63cd6dd2d0a478421fbf0257dd0dea78e8b28c5e619ec4fad

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