Skip to content

Web scraping para extrair dados de produtos, tradução utilizando o LibreTranslate, tratamento dos dados e classificação de produtos em categorias utilizando um modelo de IA treinado com TensorFlow .

Notifications You must be signed in to change notification settings

leticiamn/WebScrapperAiPapper

Repository files navigation

Web Scraping e Classificação de Produtos com IA

Descrição

Este projeto realiza web scraping em dois sites de fornecedores para extrair dados de produtos. Após a extração, os dados são consolidados e um dos sites, que está em espanhol, passa por um processo de tradução utilizando o LibreTranslate. Em seguida, um modelo de IA treinado com TensorFlow é utilizado para classificar os produtos em categorias específicas. Além disso, o projeto permite treinar o modelo com uma nova base de dados contendo produtos e categorias para melhorar a precisão da classificação.

Funcionalidades

  • Web Scraping: Extração de dados de produtos de dois sites de fornecedores.
  • Tradução: Tradução de dados do espanhol para o português utilizando um servidor local do LibreTranslate.
  • Classificação com IA: Classificação dos produtos em categorias usando um modelo de IA treinado com TensorFlow.
  • Treinamento do Modelo: Possibilidade de treinar o modelo com uma nova base de produtos e categorias.
  • Controle de Execução: Registro dos processos em um arquivo de banco de dados SQLite com horários de início e fim.

Requisitos

Instalação

  1. Clone o repositório:

    git clone https://github.com/leticiamn/WebScrapperAiPapper.git
    cd WebScrapperAiPapper
  2. Crie um ambiente virtual:

    pithon -m venv .venv
  3. Ative o ambiente virtual e instale as dependências:

    .venv/Scripts/activate
    pip install -r requirements.txt
  4. Configure e inicie o servidor local do LibreTranslate:

    libretranslate --update-models

Uso

  1. Treinar o Modelo:

    Para treinar o modelo com uma nova base de produtos e categorias, atualize o arquivo exemplo_categorias.csv dentro da pasta modules/classificador e execute o script classificar.py. Serão gerados dois arquivos vectorizer.pickle e predict_model.sav que serão utilizados para classificar os produtos.

  2. Executar o Web Scraping e Classificação:

    Para executar a extração dos dados dos fornecedores, é necessário inserir os dados de acesso no arquivo config.ini, seguindo o modelo do arquivo config_example.ini.

    Inicie a execução dos arquivos nesta ordem:

    • run_lider.bat
    • run_mucho_1.bat
    • run_mucho_2.bat
    • run_mucho_3.bat
    • run_mucho_4.bat

    Estes scripts irão realizar a extração dos dados em 1 instância para o site do Lider e em 4 instâncias para o site do Mucho.

    Após finalização da extração, inicie a execução do arquivo run_tratar.bat que irá realizar o processo de tratamento dos dados, tradução e classificação dos produtos.

    É possível agendar a execução deste arquivo para repetir conforme o tempo desejado, pois este irá verificar no banco controle_execucao.db do SQLite se todas as extrações já finalizaram e se sim, irá iniciar o processo.

    Para verificar as execuções, você pode utilizar o SQLite Browser, basta abrir o arquivo controle_execucao.db que estará na pasta modules/controle_execucao.

    Após finalização completa do processo, será gerado um arquivo base_final.csv na pasta raiz do projeto.`

Banco de Dados

Os logs de execução são salvos em um arquivo SQLite (execution_logs.db) na pasta modules/controle_execucao. Para visualizar e consultar os dados, utilize o SQLite Browser.

Contribuição

Contribuições são bem-vindas! Sinta-se à vontade para abrir issues e pull requests.

Contato

Para dúvidas ou mais informações, entre em contato:

About

Web scraping para extrair dados de produtos, tradução utilizando o LibreTranslate, tratamento dos dados e classificação de produtos em categorias utilizando um modelo de IA treinado com TensorFlow .

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published