Skip to content

rictom/cnpj_api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cnpj_api

Api em python para consultar dados de empresas com dados abertos públicos da Receita Federal, utilizando uma base local em sqlite cnpj.db, que deve ser gerada utilizando o projeto https://github.com/rictom/cnpj-sqlite ou pelo programa Rede_Cria_Tabelas.

Dados públicos de CNPJs no site da Receita:

Os arquivos csv zipados com os dados de CNPJs estão disponíveis em https://dados.gov.br/dados/conjuntos-dados/cadastro-nacional-da-pessoa-juridica---cnpj ou https://arquivos.receitafederal.gov.br/dados/cnpj/dados_abertos_cnpj/

Requisitos

Como a base ocupa bastante espaço, é recomendável ter 100GB de SSD disponível como disco principal no computador, bem como 16GB de memória RAM.

Versão Executável

Uma versão executável está na pasta apps deste repositório. Foi gerado pela biblioteca pyinstaller e testado em Windows 10. Para gerar o arquivo cnpj.db (base de dados de empresas), baixe o programa Rede_Cria_Tabelas disponível em https://www.redecnpj.com.br/rede/pag/aplicativo.html e execute as partes 1 e 2 desse programa (baixar as bases e gerar a base cnpj.db). Descompacte o arquivo cnpj_api.win.zip e salve o arquivo cnpj.db na mesma pasta que cnpj_api.exe. Para executar, clique duas vezes no .exe.

Versão Python

É recomendável criar um ambiente para rodar o projeto, siga as orientações em https://docs.python.org/pt-br/3/library/venv.html. O arquivo cnpj.db deve estar na mesma pasta que o script cnpj_listas.py.

No console, dentro de um ambiente python, para instalar as bibliotecas utilizadas, rode pip install -r requirements_cnpj_api.txt

Para executar o script:

python cnpj_api.py

A primeira vez que o script for rodado, irá gerar índices no arquivo cnpj.db. Isso poderá levar dezenas de minutos ou horas para execução, dependendo do computador. O arquivo cnpj.db final terá mais de 60GB!

Abra o endereço http:127.0.0.1:8015/docs no navegador para visualizar a página de testes da api: image

Consulta por CNPJ(s)

A consulta de um cnpj, por exemplo, do Banco do Brasil, pode ser feita com a url
http://127.0.0.1:8015/cnpj/00000000000191
image

Podem ser colocados vários CNPJs separados por vírgulas ou ponto-e-vírgulas(;).

Consulta por parâmetros (opção /consultar?)

As consultas podem ser feitas por UF, Município, CEP, Natureza Jurídica, CNAE primária ou secundária, Situação Cadastral, Porte da Empresa, Opção Simples, Opção Mei, Data de Início de Atividades e Capital Social.

Exemplos:

Lembre-se que a base tem mais de 60 milhões de empresas, então dependendo dos parâmetros as consultas poderão demorar.

Pré-requisitos:

Python 3.12;
Bibliotecas fastAPI e aiosqlite.

DOE!:

Se o projeto for útil, faça uma doação para a Paróquia do Padre Júlio Lancelotti: https://www.oarcanjo.net/site/doe/

Dificuldades:

Em caso de erros, dúvidas ou sugestões, abra uma issue (https://github.com/rictom/cnpj_API/issues) neste repositório.

Outras referências:

Fazer consultas de listas de empresas: https://github.com/rictom/cnpj_consulta
Projeto para visualizar os relacionamentos de sócios e de empresas de forma gráfica: https://github.com/rictom/rede-cnpj
Carregar os dados de cnpjs para o banco de dados MYSQL: https://github.com/rictom/cnpj-mysql

Histórico de versões

versão 0.1 (janeiro/2026)

About

Api em python para consultar dados de empresas com dados abertos públicos da Receita Federal

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages