Vamos imaginar que você trabalhe na área de tecnologia de um grande e-commerce. Para evitar que o preço dos produtos da loja fique acima da média do mercado, a empresa decide monitorar de forma automatizada o preço dos produtos da concorrência.
Agora, vamos imaginar que você queira comprar um imóvel, mas para tomar essa decisão, precisa aguardar a melhor oportunidade.
Você vai aprender as principais técnicas de programação para automatizar tarefas repetitivas e criar soluções que ajudam na tomada de decisão. Vamos criar um robô para monitorar o preço de produtos de uma loja virtual.
Depois de dominar as técnicas que serão mostradas, você poderá aplicá-las para solucionar diversos problemas do dia a dia.
- Varredura do site alvo para minerar dados do produtos
- Salvar os dados do produto e histórico de variação de preços em banco de dados
- Gerar um relatório em PDF com gráfico de variação de preços
- Enviar um alerta por e-mail sempre que houver algum desconto acima de 5%
- Web scraping
- Armazenamento em banco de dados SQLite com Entity Framework Core
- Geração de HTML dinâmico
- Plotagem de gráficos
- Geração de documento PDF
- Envio de e-mail automático
- HtmlAgilityPack para web scraping
- EntityFramework Core com Sqlite para banco de dados
- RazorEngine.NetCore para geração de páginas HTML dinâmicas
- XPlot.Plotly para plotar gráficos
- PuppeteerSharp para gerar PDF
Você vai aprender as principais técnicas para automatizar tarefas repetitivas e poderá aplicá-las seja no trabalho, na vida pessoal, ou ainda pôr uma ideia em prática para que vire negócio.
Adicionando pacote HtmlAgilityPack
dotnet add package HtmlAgilityPack
Adicionando pacotes do Entity Framework para SQLite
dotnet add package Microsoft.EntityFrameworkCore.Design
dotnet add package Microsoft.EntityFrameworkCore.Sqlite
dotnet add package Microsoft.EntityFrameworkCore.Sqlite.Design
Adicionando pacote RazorEngine.NetCore para gerar HTML dinâmico
dotnet add package RazorEngine.NetCore
Adicionando pacote XPlot.Plotly para plotar gráficos
dotnet add package FSharp.Core
dotnet add package XPlot.Plotly
Adicionando pacote PuppeteerSharp para gerar PDF
dotnet add package PuppeteerSharp
Instalação do EF Core Tool
dotnet tool install --global dotnet-ef
Adicionando migrations do banco de dados
dotnet ef migrations add CreateDiscountMonitorDb -o ./Data/Migrations
Migrando estrutura do banco de dados
dotnet ef database update
NOTA: Este projeto foi desenvolvido no curso Jornada do Programador. O objetivo foi demonstrar algumas técnicas de desenvolvimento e ferramentas disponíveis na plataforma .NET.