⭐ Star this project to support!
Enem Extractor é uma ferramenta CLI que extrai/corrige questões de provas do ENEM e as converte em JSON mantendo assets (imagens, gráficos, etc.)
🏓 Veja uma prova extraida pelo Enem Extractor no mundo real aqui
Neste repositório você pode encontrar todas as provas do Enem em JSON extraídas pelo Enem Extractor. Clique aqui para ver.
-
Machine Learning: Treine modelos de IA com questões do ENEM.
-
Web Apps: Crie aplicativos web para estudantes com questões do ENEM.
-
Banco de Questões: Crie ou Alimente bancos de questões com questões do ENEM.
Para rodar esse projeto você precisa ter o Python (3.6+) e o pip instalados. Você pode baixar o Python aqui.
Para rodar o Enem Extractor via
pip
, execute o seguinte comando no terminal:
pip install enem
Após a instalação, você pode extrair questões de uma prova em formato PDF. Supondo que você tenha um arquivo de prova do ENEM chamado prova.pdf
no mesmo diretório, basta rodar:
python -m enem prova.pdf
O script irá analisar a prova e extrair as questões, gerando uma pasta com um arquivo de saída em JSON com os dados extraídos e outros assets da prova. Veja mais detalhes da saída do comando aqui.
Você pode fornecer parâmetros adicionais para personalizar o processo de extração:
-f
ou--file
: Caminho para o arquivo PDF da prova. (obrigatório)-g
ou--key
: Caminho para o arquivo PDF do gabarito. (opcional)-o
ou--output
: Caminho onde a pasta dos arquivos extraídos será criada. (opcional)-m
ou--minimal
: Extração mínima, sem detalhamento de fontes de texto e espaçamento. (opcional)
Exemplo de uso com parâmetros:
python -m enem -f prova.pdf -g gabarito.pdf -o C:\documents
Este comando irá extrair as questões da prova prova.pdf
, corrigir com o gabarito gabarito.pdf
e salvar a pasta dos resultados em C:\documents
.
Aprenda sobre as saídas que da extração clicando aqui.


- Faça um fork deste repositório.
- Crie uma venv (
python -m venv venv
) e ative-a (source venv/bin/activate
ouvenv/script/activate
). - Instale as dependências (
pip install -r requirements.txt
). - Faça as alterações desejadas, instale o pacote localmente (
pip install -e .
) e teste. - Faça o commit das suas alterações (
git commit -am 'Adiciona nova funcionalidade'
). - Crie uma branch para a sua modificação (
git checkout -b feature/nova-funcionalidade
). - Faça suas alterações e commit (
git commit -am 'Adiciona nova funcionalidade'
). - Envie para o repositório original (
git push origin feature/nova-funcionalidade
). - Crie um novo Pull Request.
Este projeto está licenciado sob a Licença MIT - veja o arquivo LICENSE para mais detalhes.
Caso você tenha alguma dúvida, queira sugerir melhorias ou encontre problemas, fique à vontade para abrir um issue.
Created with ❤️ by Pedro L. Dias