Skip to content
/ cnpq Public

🎓 Ferramenta automatizada para baixar currículos Lattes do CNPq com bypass de reCAPTCHA - Interface web Flask + integração 2Captcha

Notifications You must be signed in to change notification settings

TechBeme/cnpq

Repository files navigation

🎓 Baixador de Currículo Lattes CNPq

Ferramenta automatizada para baixar currículos Lattes do CNPq com bypass de reCAPTCHA

Python Flask 2Captcha Licença

FuncionalidadesInício RápidoInstalaçãoConfiguraçãoUsoLicença

Idiomas: 🇺🇸 English🇪🇸 Español


📋 Índice


🎯 Visão Geral

O Baixador de Currículo Lattes CNPq é uma ferramenta automatizada projetada para baixar currículos da Plataforma Lattes do CNPq. O sistema ignora automaticamente a proteção reCAPTCHA usando o serviço 2Captcha, permitindo extração de currículos de forma eficiente e sem interrupções.

Principais capacidades:

  • Resolução automática de reCAPTCHA com integração 2Captcha
  • Interface web Flask para downloads fáceis de currículos
  • Gerenciamento de cookies para controle de sessão
  • Extração automática de currículos em XML
  • Sistema de armazenamento local para arquivos baixados
  • Script de linha de comando para processamento em lote
  • Suporte a serviço systemd para deploy em produção

Perfeito para:

  • Pesquisadores acadêmicos
  • Departamentos de RH
  • Projetos de coleta de dados
  • Análise acadêmica
  • Instituições de pesquisa

👨‍💻 Sobre o Desenvolvedor

Desenvolvido por Rafael Vieira (TechBeme)

GitHub Fiverr Upwork Email

Desenvolvedor Full-Stack & Especialista em Automação

Especializado em web scraping, sistemas de automação, desenvolvimento de bots e soluções de bypass de reCAPTCHA.

💼 Expertise Principal

  • 🔍 Web Scraping & Extração de Dados
  • 🤖 Desenvolvimento de Bots & Automação
  • 🛡️ Soluções de Bypass de CAPTCHA
  • 💻 Desenvolvimento Full-Stack (Python, Flask, Next.js, React)
  • ⚡ Automação de Processos & Workflows
  • 📊 Processamento & Análise de Dados

🌍 Idiomas

🇺🇸 English • 🇧🇷 Português • 🇪🇸 Español

📬 Contato

Email: contact@techbe.me


✨ Funcionalidades Principais

🔐 Bypass de reCAPTCHA

  • Resolução automática de reCAPTCHA usando API 2Captcha
  • Alta taxa de sucesso com geração confiável de tokens
  • Tratamento de erros e mecanismos de retry

🌐 Interface Web

  • Interface web limpa e intuitiva baseada em Flask
  • Status de download em tempo real
  • Entrada de ID de currículo via formulário
  • Servir arquivos automaticamente

💾 Gerenciamento de Armazenamento

  • Armazenamento automático de arquivos locais na pasta resumes/
  • Cache de arquivos para evitar downloads duplicados
  • Extração de currículos XML de arquivos ZIP
  • Nomenclatura organizada de arquivos com ID Lattes

🔄 Uso Flexível

  • Interface web com Flask (run.py)
  • Script de linha de comando (cnpq.py)
  • Interface web alternativa (render.py)
  • Serviço systemd para deploy em produção

📝 Logging

  • Sistema de logging abrangente
  • Rastreamento de informações de debug
  • Relatórios de erros e monitoramento

🛠️ Stack Tecnológico

Tecnologia Versão Propósito
Python 3.7+ Linguagem de programação principal
Flask 3.0+ Framework web para interface
2Captcha Mais recente Serviço de resolução de reCAPTCHA
Requests Mais recente Cliente HTTP para requisições web
Gunicorn Mais recente Servidor HTTP WSGI para produção

🚀 Início Rápido

Pré-requisitos

  • Python 3.7 ou superior
  • Chave API 2Captcha (Obtenha uma aqui)
  • ID Lattes do CNPq (número de 16 dígitos)

1. Clone o Repositório

git clone https://github.com/TechBeme/cnpq.git
cd cnpq

2. Instale as Dependências

pip install -r requirements.txt

3. Configure

Copie config.ini.example para config.ini e adicione suas credenciais:

[DEFAULT]
recaptcha_key = 6LeIxAcTAAAAAJcZVRqyHh71UMIEGNQ_MXjiZKhI

[TWOCAPTCHA]
API_KEY = sua_chave_api_2captcha_aqui

4. Execute a Interface Web

python run.py

Acesse a aplicação em http://localhost:5000


📦 Instalação

Opção 1: Instalação Padrão

# Clone o repositório
git clone https://github.com/TechBeme/cnpq.git
cd cnpq

# Crie um ambiente virtual (recomendado)
python -m venv venv
source venv/bin/activate  # No Windows: venv\Scripts\activate

# Instale as dependências
pip install -r requirements.txt

# Configure
cp config.ini.example config.ini
# Edite config.ini com suas credenciais

# Execute
python run.py

Opção 2: Deploy em Produção

# Instale e configure como acima
# Então configure o serviço systemd

sudo cp cnpq.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable cnpq
sudo systemctl start cnpq
sudo systemctl status cnpq

⚙️ Configuração

config.ini

Crie um arquivo config.ini baseado em config.ini.example:

[DEFAULT]
# Chave do site reCAPTCHA do CNPq (geralmente esta)
recaptcha_key = 6LeIxAcTAAAAAJcZVRqyHh71UMIEGNQ_MXjiZKhI

[TWOCAPTCHA]
# Sua chave API do 2Captcha
API_KEY = sua_chave_api_2captcha_aqui

Obtendo sua Chave API 2Captcha

  1. Cadastre-se em 2Captcha
  2. Navegue até seu painel
  3. Copie sua chave API
  4. Cole no arquivo config.ini

Encontrando IDs Lattes

Os IDs Lattes são números de 16 dígitos encontrados nas URLs dos currículos Lattes do CNPq:

http://lattes.cnpq.br/1234567890123456
                      ^^^^^^^^^^^^^^^^
                         ID Lattes

🎮 Uso

Interface Web (Recomendado)

  1. Inicie o servidor Flask:

    python run.py
  2. Abra seu navegador e vá para http://localhost:5000

  3. Digite o ID Lattes (16 dígitos)

  4. Clique em "Download"

  5. O arquivo XML será baixado automaticamente

Nota: Os arquivos baixados são armazenados na pasta resumes/ com o formato {id_lattes}.xml

Script de Linha de Comando

Para downloads únicos sem a interface web:

python cnpq.py

Nota: Edite o script para definir o ID Lattes desejado antes de executar.

Interface Web Alternativa

Uma versão simplificada sem logging ou cache:

python render.py

🚀 Deploy como Serviço

Serviço Systemd (Linux)

O arquivo cnpq.service incluído permite executar a aplicação como um serviço systemd.

Instalação:

# Copie o arquivo de serviço
sudo cp cnpq.service /etc/systemd/system/

# Atualize os caminhos no arquivo de serviço se necessário
sudo nano /etc/systemd/system/cnpq.service

# Recarregue o systemd
sudo systemctl daemon-reload

# Habilite o serviço (iniciar no boot)
sudo systemctl enable cnpq

# Inicie o serviço
sudo systemctl start cnpq

# Verifique o status
sudo systemctl status cnpq

Comandos de Gerenciamento:

# Iniciar
sudo systemctl start cnpq

# Parar
sudo systemctl stop cnpq

# Reiniciar
sudo systemctl restart cnpq

# Ver logs
sudo journalctl -u cnpq -f

📁 Estrutura do Projeto

cnpq/
├── cnpq.py               # Script de linha de comando
├── run.py                # Aplicação Flask principal com logging
├── render.py             # Aplicação Flask alternativa
├── config.ini.example    # Template de configuração
├── config.ini            # Sua configuração (ignorada pelo git)
├── cnpq.service          # Arquivo de serviço systemd
├── requirements.txt      # Dependências Python
├── templates/
│   └── index.html        # Template da interface web
├── resumes/              # Arquivos de currículo baixados
└── cnpq.log              # Logs da aplicação

📝 Licença

Licença Proprietária - Todos os Direitos Reservados

Copyright © 2026 Rafael Vieira (TechBeme)

❌ Restrições

  • Sem uso comercial sem permissão explícita
  • Sem modificações ou trabalhos derivados
  • Sem distribuição ou sublicenciamento
  • Sem engenharia reversa
  • Sem hospedagem pública sem autorização

✅ Uso Permitido

  • Visualizar código-fonte para fins educacionais
  • Executar para uso pessoal e de pesquisa não comercial
  • Fork para estudo pessoal apenas (não para distribuição)

📧 Licenciamento Comercial

Para uso comercial, soluções white-label ou desenvolvimento personalizado:

Contato: contact@techbe.me


⚠️ Aviso Legal

Esta ferramenta é fornecida apenas para fins educacionais e de pesquisa.

  • Este projeto é independente e NÃO afiliado ao CNPq ou ao governo brasileiro
  • Os usuários são responsáveis pela conformidade com os Termos de Serviço do CNPq
  • Coleta apenas dados publicamente disponíveis
  • Limitação de taxa integrada para respeitar recursos do servidor
  • Os usuários devem cumprir as leis de proteção de dados aplicáveis (LGPD, GDPR, etc.)
  • O desenvolvedor não é responsável pelo uso indevido desta ferramenta

Use com responsabilidade e ética.


🙏 Agradecimentos

Construído com:


Desenvolvido por Rafael Vieira

GitHub Fiverr Upwork Email

About

🎓 Ferramenta automatizada para baixar currículos Lattes do CNPq com bypass de reCAPTCHA - Interface web Flask + integração 2Captcha

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published