Pontuação Qualis, SJR e SNIP para programas de pós-graduação a partir de currículos Lattes.
Inspirado no PontuarLattes (jalvesaq) em R — que deixou de funcionar quando a Plataforma Lattes removeu o link de download XML —, o magicLattes reimplementa toda a lógica de pontuação bibliométrica em Python, com análise mais rica, visualizações e relatório PDF profissional.
| Aspecto | PontuarLattes (R) | magicLattes (Python) |
|---|---|---|
| Fonte dos dados | XML do Lattes (indisponível desde 2021) | HTML extraído via Selenium (já usado pelo lattes_downloader) |
| Qualis | Apenas área específica | Multi-área com prioridade + match por título |
| SJR/SNIP | Bases locais manuais | Download e processamento automatizado |
| Gráficos | Tabelas em PDF LaTeX | 5 visualizações matplotlib/seaborn embutidas |
| Análise | Pontuação básica | Gini, desigualdade, scatter, heatmap, temporal |
| Saída | PDF via XeLaTeX + texlive-full | PDF via reportlab (Python puro) |
| Dependências | R + texlive-full + Docker (~5GB) | Python + matplotlib + reportlab (~200MB) |
HTMLs do Lattes (via Selenium/lattes_downloader)
│
▼
Extrator Python (cvuri → ISSN, DOI, periódico, ano, título)
│
▼
Cruzamento ISSN → Qualis (base Sucupira, multi-área)
Cruzamento ISSN → SJR/SNIP (Scimago + CWTS)
Match por título quando ISSN não encontra Qualis
│
▼
Pontuação por estrato (A1=100, A2=90, B1=50, ...)
+ Livros (70), Organizados (70), Capítulos (15)
+ Coautoria interna, Gini, média móvel
│
▼
Relatório PDF (8 págs, landscape A4)
+ Dataset JSON para dashboard web
# 1. Baixar HTMLs dos docentes (via lattes_downloader ou scriptLattes)
python3 lattes_downloader.py "K4765153H0,K4781309T5,..." --output ./output
# 2. Extrair metadados estruturados dos HTMLs
python3 src/extract.py --input ./output --output data/processed/ppgcs_extracted.json
# 3. Cruzar com Qualis + SJR/SNIP e gerar relatório
python3 src/report.py --data data/processed/ppgcs_extracted.json \
--qualis data/qualis/qualis_map.json \
--sjr-snip data/qualis/sjr_snip_map.json \
--programa "PPGCS/UFBA" \
--area "Sociologia" \
--inicio 2021 --fim 2024 \
--output Relatorio_PPGCS_Qualis.pdfmagicLattes/
├── src/
│ ├── extract.py # Extrator HTML → JSON estruturado (ISSN, DOI, título, periódico)
│ ├── report.py # Gerador de relatório PDF com gráficos e análises
│ └── qualis.py # Cruzamento ISSN/título → Qualis + SJR/SNIP
├── data/
│ ├── processed/ # Datasets extraídos (JSON)
│ │ ├── ppgcs_extracted.json
│ │ └── ppgcs_pontuacao.json
│ └── qualis/ # Bases Qualis, SJR, SNIP (JSON maps)
│ ├── qualis_map.json
│ └── sjr_snip_map.json
├── assets/ # Logo e imagens
├── docs/ # GitHub Pages (dashboard interativo)
└── README.md
- Distribuição Qualis agregada por estrato (A1–C, SQ)
- Ranking de docentes por pontuação total
- Heatmap Qualis × docente (matriz visual)
- Produção temporal por ano (artigos vs livros/capítulos)
- Scatter artigos × livros/capítulos (tamanho = pontuação)
- Coeficiente de Gini (desigualdade na distribuição de pontuação)
- Top 5 vs Bottom 5 (concentração de produção)
- SJR e SNIP médios por docente (quando disponível)
Aplicado ao Programa de Pós-Graduação em Ciências Sociais da UFBA (23 docentes, período 2021–2024):
- 527 artigos extraídos, 86% com Qualis classificado
- 114 artigos + 98 livros/capítulos no período
- Relatório PDF completo + dashboard web em leofn.com/lattes_ppgcs
- PontuarLattes original: jalvesaq/PontuarLattes — lógica de pontuação Qualis/SJR/SNIP em R
- lattes_downloader: LABHDUFBA — download automatizado de currículos Lattes via Selenium + 2Captcha
- Desenvolvimento: Leonardo F. Nascimento (UFBA/LABHDUFBA) + Hermes Agent
MIT