Skip to content

Rafael-Souza-97/web-scrap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Web Scrap

O Web Scrap é um software fullstack desenvolvido com TypeScript e React para o front-end, e JavaScript, Node.js e Sequelize com banco de dados MySQL para o back-end. O objetivo do projeto é fazer web scraping de produtos em lojas online, utilizando o Puppeteer.

Como o projeto é voltado para aprendizado, a coleta dos dados é feita em modo de fila, sem uso de cluster para reduzir o tempo de scraping. No entanto, para melhorar a experiência do usuário, foi implementada uma lógica em que todas as pesquisas realizadas pelos usuários são armazenadas no banco de dados. Quando um usuário repete a mesma pesquisa, os resultados são exibidos instantaneamente, sem precisar refazer o scraping.

Na interface do usuário, o usuário pode selecionar a loja desejada (Buscapé, Mercado Livre ou ambas) e pesquisar por um produto específico. O resultado da pesquisa é exibido em cards, com informações como o nome do produto, o preço e o link para o produto.

Como o projeto está em fase de aprendizado, ainda não foi implementada a utilização de cluster, porém, a intenção é aprimorar essa funcionalidade no futuro. O Web Scrap é um ótimo projeto para quem deseja aprofundar seus conhecimentos em web scraping e desenvolvimento fullstack.


Sobre o web-scraping

Com o aumento de dados disponíveis na internet, o web scraping se tornou uma técnica valiosa para coletar informações de sites da web de maneira automatizada. O web scraping é a prática de coletar dados de páginas da web e extrair as informações relevantes para análise e uso posterior.

Uma das ferramentas mais utilizadas para web scraping é o Puppeteer, que é uma biblioteca Node.js desenvolvida pelo Google. O Puppeteer permite automatizar tarefas em navegadores web e extrair informações de maneira programática.

Com o Puppeteer, é possível simular interações do usuário em um navegador, como clicar em botões, preencher formulários e navegar por páginas da web. Isso permite que sejam coletadas informações que, de outra forma, seriam difíceis ou impossíveis de obter.

Em resumo, o web scraping é uma técnica poderosa para coletar dados da web, e o Puppeteer é uma ferramenta útil para automatizar essa tarefa. No projeto, o Puppeteer foi utilizado para coletar dados de um site e extrair as informações necessárias para a criação de um banco de dados.


Estilização

Para a estilização do projeto, utilizei uma combinação de ferramentas que me permitiu criar uma interface web responsiva, funcional e atraente.

Em primeiro lugar, utilizei o framework Tailwind de forma estratégica para deixar o site estilizado e responsivo em pouco tempo. O Tailwind é um framework CSS utilitário que permite criar estilos customizados rapidamente, sendo essencial para atender às demandas de prazo do projeto. Utilizei-o para a estruturação geral da página e para aplicar estilos em elementos como botões, textos e espaçamentos.

Os campos de input e Select, por sua vez, foram estilizados utilizando o Material UI, conjunto de componentes React pré-construídos que foram personalizados para atender às necessidades específicas do projeto. Esses componentes permitem que o usuário interaja com o sistema de maneira fácil e intuitiva, além de adicionar uma camada de sofisticação visual à interface. Além disso, utilizei o Skeleton do Material UI para criar um efeito visual de loading na página, o que ajuda a reduzir a ansiedade do usuário enquanto aguarda a resposta do sistema.

Por fim, utilizei o CSS nativo em alguns casos para complementar o estilo dos componentes, como a estilização das fontes e cores. Com a combinação dessas ferramentas, consegui criar uma interface web agradável e eficiente em um curto período de tempo.



INSTALAÇÃO DO SOFTWARE WEB SCRAP

Instalação


  • Clone o repositório git@github.com:Rafael-Souza-97/web-scrap.git:
git clone git@github.com:Rafael-Souza-97/web-scrap.git

  • Entre na pasta do repositório que você acabou de clonar:
cd web-scrap

  • Instale as depëndencias com npm install:
npm install
  • Instale as depëndencias do Front-end, com npm install:

Entre na pasta frontend.

cd frontend

Instale as dependências.

npm install
  • Instale as depëndencias do Back-end, com npm install:

Entre na pasta backend.

cd ..
cd backend

Instale as dependências.

npm install


Executando a aplicação:

  • Execute a aplicação com com npm run dev na pasta frontend e backend do projeto:

Executará a aplicação em modo de desenvolvimento.

npm run dev

Abra http://localhost:5173 no seu navegador para visualiza-lo.




Autor

Referências

Tecnologias e Ferramentas

Estilização


Preview

web-scrap.mp4

About

FullStack Software Engineering

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published