Skip to content

Latest commit

 

History

History
183 lines (122 loc) · 6.07 KB

README_pt-br.md

File metadata and controls

183 lines (122 loc) · 6.07 KB

Tech News 📰

🇺🇸 Click here to access the English version.

Sumário

  1. Sobre o Projeto
  2. Tecnologias
  3. Funcionalidades
  4. Como Executar o Projeto
  5. Sobre a Trybe
  6. Contato

Sobre o Projeto

Projeto 31 do curso de Desenvolvimento Web da Trybe.

Tech News é um projeto em Python que utiliza Beautiful Soup para fazer raspagem de dados no blog da Trybe, coletando notícias e artigos sobre tecnologia e armazenando-os em um banco de dados MongoDB.

ℹ️ Escrevi testes para as funções implementadas pelo Trybe. Esses testes podem ser encontrados no subdiretório de tests.


Tecnologias

O projeto foi desenvolvido em Python e testado com Pytest. O banco de dados utilizado foi o MongoDB, e a conexão e interação com ele foram estabelecidas através da biblioteca PyMongo. Para garantir a qualidade do código, utilizou-se o Flake8, e a raspagem de dados na web foi realizada com o Beautiful Soup.

Python MongoDB PyMongo Beautiful Soup Pytest Flake8


Funcionalidades

  • Coletar notícias e artigos do blog da Trybe usando raspagem de dados e armazená-los em um banco de dados MongoDB.
  • Pesquisar notícias por título.
  • Pesquisar notícias por data.
  • Pesquisar notícias por categoria.
  • Listar as 5 categorias com mais notícias.

Como Executar o Projeto

Para rodar o projeto localmente, siga os passos abaixo.

  1. Clone o repositório.
git clone [email protected]:garciaagui/tech-news.git
  1. Navegue até a raiz do projeto.
cd tech-news/
  1. Crie o ambiente virtual.
python3 -m venv .venv
  1. Ative o ambiente virtual.
source .venv/bin/activate
  • Note que no começo da linha do terminal haverá (.venv), como no exemplo abaixo.
(.venv) gui@gui-desktop:~/Trybe/tech-news$
  • Para desativar o ambiente virtual, execute o comando deactivate. Lembre-se de ativá-lo novamente quando retornar ao projeto.
  1. Instale as dependências no ambiente virtual.
python3 -m pip install -r dev-requirements.txt
  1. Se você não tiver o MongoDB instalado localmente, inicie-o via Docker.
docker-compose up -d mongodb
  • ℹ️ O nome do banco de dados é tech_news.
  1. Por fim, execute o seguinte comando para acessar o menu.
tech-news-analyzer
ℹ️ Para instruções adicionais, clique aqui.
  • 🧪 Para rodar todos os testes, execute o comando abaixo.
python3 -m pytest
  • 🧪 Para rodar apenas um arquivo de teste, siga o exemplo abaixo.
python3 -m pytest tests/reading_plan/test_reading_plan.py
  • 🧪 Para rodar apenas um teste específico, siga o exemplo abaixo.
python3 -m pytest -k test_reading_plan_group_news_with_valid_input
  • Caso deseje fazer testes manuais diretamente nos módulos onde as funções foram implementadas, siga o exemplo abaixo.
python3 -m tech_news.scraper.py

Sobre a Trybe

"A Trybe é uma escola do futuro para qualquer pessoa que queira melhorar de vida e construir uma carreira de sucesso em tecnologia, onde a pessoa só paga quando conseguir um bom trabalho."

"O programa conta com mais de 1.500 horas de aulas online, aborda introdução ao desenvolvimento de software, front-end, back-end, ciência da computação, engenharia de software, metodologias ágeis e habilidades comportamentais."


Contato

Projeto desenvolvido por Guilherme Garcia. Seguem abaixo minhas redes sociais e meios de contato. 🤘

Gmail Linkedin GitHub Instagram

Voltar ao topo