No project description provided
Project description
pypigz
Descrição
O pypigz
é um pacote Python para leitura de arquivos Excel contendo dados de produtos e inserção desses dados em um banco de dados MySQL. Ele também inclui uma função para ser executada em uma função AWS Lambda, permitindo a automação do processo de leitura e inserção de dados.
Instalação
Para instalar as dependências do projeto, utilize o Poetry:
poetry install
Configuração
Crie um arquivo .env na raiz do projeto com as seguintes variáveis de ambiente:
DB_HOST=localhost
DB_USER=user
DB_PASS=password
DB_NAME=database
DB_PORT=3306
Utilização
Executando Localmente
Para executar o script localmente, utilize o seguinte comando:
python pypigz/main.py
Executando na AWS Lambda
Crie a função Lambda:
- No console da AWS, vá para o serviço Lambda e crie uma nova função.
- Escolha "Author from scratch" e forneça um nome para a função.
- Escolha um runtime compatível, como Python 3.8 ou superior.
- Crie ou escolha uma role que tenha permissões para acessar o S3 e o banco de dados.
Configure o código da função Lambda:
- No editor de código da função Lambda, adicione o código do arquivo lambda_function.py.
Configure as variáveis de ambiente:
- No console da AWS Lambda, vá para a seção "Configuration" e depois "Environment variables".
- Adicione as variáveis de ambiente necessárias para a conexão com o banco de dados (DB_HOST, DB_USER, DB_PASS, DB_NAME, DB_PORT).
Configure o trigger do S3:
- No console da AWS Lambda, vá para a seção "Configuration" e depois "Triggers".
- Adicione um novo trigger para o S3 e configure-o para acionar a função Lambda quando um novo arquivo for carregado no bucket especificado.
Teste a função Lambda:
- No console da AWS Lambda, vá para a seção "Test" e crie um novo evento de teste com o seguinte formato:
{
"merchantId": 1,
"s3Bucket": "nome-do-seu-bucket",
"s3Key": "caminho/para/o/arquivo.xlsx"
}
- Execute o teste e verifique se a função Lambda processa o arquivo corretamente e insere os dados no banco de dados.
Estrutura do Projeto
- pypigz/main.py: Função principal para leitura e inserção de dados.
- pypigz/connection.py: Funções para conexão e execução de queries no banco de dados.
- pypigz/product.py: Classe para manipulação de dados de produtos e geração de queries SQL.
- .env: Arquivo de configuração com variáveis de ambiente.
- pyproject.toml: Arquivo de configuração do Poetry.
- poetry.lock: Arquivo de lock do Poetry.
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
pypigz-0.0.4.tar.gz
(4.3 kB
view details)
Built Distribution
File details
Details for the file pypigz-0.0.4.tar.gz
.
File metadata
- Download URL: pypigz-0.0.4.tar.gz
- Upload date:
- Size: 4.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.10.12 Linux/6.8.0-40-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cceaa1db5e6be96951e1ac214955570aeb9dfc37d34ec01a926216d1cfdef6dc |
|
MD5 | 3e7381285c2a12c79b20418e3f084d14 |
|
BLAKE2b-256 | 3ee3d585063c39bbb33a41f0713dbec2f0ccd44d9e9b02c11030b5b605047e38 |
File details
Details for the file pypigz-0.0.4-py3-none-any.whl
.
File metadata
- Download URL: pypigz-0.0.4-py3-none-any.whl
- Upload date:
- Size: 5.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.10.12 Linux/6.8.0-40-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 049198e275eef70e234c6c554be4987c838ddf2aa8616c37ae7903de74a865f2 |
|
MD5 | ad3042c6d5ed937e0876653c6aac7723 |
|
BLAKE2b-256 | da57ef46fc128921b61f09780564dcdff198c456994e57cf0f270e807f72e401 |