Projeto para coleta, tratamento, classificação e análise de dados de notícias falsas, utilizando técnicas de web scraping, NLP e APIs do ChatGPT para classificação temática e de vereditos.
fake-news-etl-project/
├── data/
│ ├── external/
│ ├── interim/
│ ├── processed/
│ ├── public/
│ └── raw/
├── dashboard/
│ ├── dashboard_fake_news_v1.pbix
│ ├── dashboard_fake_news_pag1
│ └── dashboard_fake_news_pag2
├── docs/
├── models/
├── notebooks/
│ ├── exploratory/
│ └── experiments/
├── reports/
├── scripts/
├── src/
├── .gitignore
├── LICENSE
├── Makefile
├── README.md
├── requirements.txt
└── setup.py
- Coleta de dados: scraping com Selenium e Playwright (
scripts/01_scraping_listagem_selenium.py,scripts/02_scraping_detalhes_playwright.py) - Tratamento e integração: limpeza e merge dos dados (
scripts/03_merge_scraping.py) - Classificação: classificação temática e de vereditos via API do ChatGPT (
scripts/07_classificacao_fake_news_chatgpt.py,scripts/09_classificacao_vereditos_chatgpt.py) - Análise exploratória: notebooks para visualização e análise dos dados (
notebooks/exploratory/) - Dashboard: painel interativo em Power BI (
dashboard/dashboard_fake_news_v1.pbix)
Linux/macOS
export OPENAI_API_KEY='sua-chave-aqui'Windows PowerShell
setx OPENAI_API_KEY "sua-chave-aqui"pip install -r requirements.txt4. Explore os notebooks para análises detalhadas ou abra o dashboard no Power BI para visualização interativa
Victor Hugo Bitu Patricio – LinkedIn
__pycache__/
*.py[cod]
.env
Ignora toda a pasta data, exceto a pasta data/public
/data/*
!/data/public/
dashboard/*.pbix
.vscode/
.DS_Store
pandas>=1.3.0
numpy>=1.21.0
matplotlib>=3.4.0
seaborn>=0.11.0
openai>=0.27.0
playwright>=1.20.0
dateparser>=1.1.0
bertopic[visualization]>=0.14.0
umap-learn>=0.5.3
hdbscan>=0.8.29
sentence-transformers>=2.2.0
plotly>=5.10.0
.PHONY: all clean
all: coletar tratar classificar analisar
coletar:
python scripts/01_scraping_listagem_selenium.py
python scripts/02_scraping_detalhes_playwright.py
python scripts/03_merge_scraping.py
tratar:
python scripts/04_diagnostico_dados.py
classificar:
python scripts/07_classificacao_fake_news_chatgpt.py
python scripts/09_classificacao_vereditos_chatgpt.py
analisar:
jupyter nbconvert --to notebook --execute notebooks/exploratory/08_analise_classificacao_chatgpt.ipynbPágina 1 – Introdução e Nuvem de Palavras:
Página 2 – Evolução das Fake News e Principais Temas:
Este dashboard mostra a evolução da desinformação no Brasil entre 2015 e 2025, com foco em eventos críticos como eleições e pandemia. Também destaca os principais temas recorrentes nas fake news analisadas.

