Git Product home page Git Product logo

fabioserpa / cnpj-full Goto Github PK

View Code? Open in Web Editor NEW
478.0 478.0 191.0 410 KB

Utilitário em Python para ler os dados públicos do CNPJ disponibilizados pela Receita Federal e carregá-los em arquivos csv ou sqlite para fácil consumo. Também permite consultas com visualização interativa ou exportação para formatos diversos.

License: GNU General Public License v3.0

Python 83.04% HTML 16.91% Shell 0.05%

cnpj-full's People

Contributors

anthraxisbr avatar fabioserpa avatar franklinbaldo avatar igorasantos avatar marcosconceicao avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cnpj-full's Issues

Arquivo .csv não é criado e arquivo .sqlite é criado vazio

executei: py -m pip install --upgrade pip e pip install -r requirements.txt (tdo ok)

Baixei os últimos arquivos Dados Públicos CNPJ: Atualizado em 15/10/2021 15h42

copiei o projeto(CNPJ-full) e criei as pastas:
dados-publicos-zip e dados-publicos

coloquei todos os arquivos .zip na pasta dados-publicos-zip

executei o comando:
py cnpj.py dados-publicos-zip csv dados-publicos --dir

o .csv não cria e o .sqlite vem vazio

Adicionar requirements.txt

Seria uma boa ter esse arquivo. Assim a instalacao dos pacotes fica assim:

pip install -r requirements.txt

Erro ao transformar os arquivos zipados para SQLite

Pessoal, boa tarde

fiz o download dos arquivos zip e iniciei transformação em SQLipe,
No aquivo DADOS_ABERTOS_CNPJ_11 deu o erro abaixo, não estou conseguindo arrumar, alguem poderia me ajudar?

C:\Users\lgalmeida\Desktop\CNPJ-full-master>cnpj.py arquivos_zipados sqlite BancodeDados --dir
Iniciando processamento em 2019-12-11 08:31:33.288620
Processando arquivo: arquivos_zipados\DADOS_ABERTOS_CNPJ_01.zip
Bloco 1: até linha 200000. [Emps:0|Socios:0|CNAEs:0]
INFORMACOES DO HEADER:
Nome do arquivo: F.K032001K
Data de gravacao: 20191109
Numero da remessa: 00000001
Processando arquivo: arquivos_zipados\DADOS_ABERTOS_CNPJ_02.zip:464741]
Processando arquivo: arquivos_zipados\DADOS_ABERTOS_CNPJ_03.zip:1011468]
Processando arquivo: arquivos_zipados\DADOS_ABERTOS_CNPJ_04.zip:1576118]
Processando arquivo: arquivos_zipados\DADOS_ABERTOS_CNPJ_05.zip:2097973]
Processando arquivo: arquivos_zipados\DADOS_ABERTOS_CNPJ_06.zip:2938221]
Processando arquivo: arquivos_zipados\DADOS_ABERTOS_CNPJ_07.zipEs:3768101]
Processando arquivo: arquivos_zipados\DADOS_ABERTOS_CNPJ_08.zipEs:4767635]
Processando arquivo: arquivos_zipados\DADOS_ABERTOS_CNPJ_09.zipEs:5876265]
Processando arquivo: arquivos_zipados\DADOS_ABERTOS_CNPJ_10.zipEs:6857512]
Processando arquivo: arquivos_zipados\DADOS_ABERTOS_CNPJ_11.zipEs:8006986]
Traceback (most recent call last):20228564|Socios:15969481|CNAEs:8439963]
File "C:\Users\lgalmeida\Desktop\CNPJ-full-master\cnpj.py", line 463, in
main()
File "C:\Users\lgalmeida\Desktop\CNPJ-full-master\cnpj.py", line 455, in main
cnpj_full(input_list, tipo_output, output_path)
File "C:\Users\lgalmeida\Desktop\CNPJ-full-master\cnpj.py", line 223, in cnpj_full
for i_bloco, bloco in enumerate(dados):
File "C:\Users\lgalmeida\Desktop\CNPJ-full-master\cfwf.py", line 107, in _cfwf_chunck_reader
yield _cfwf_chunck(chunk, type_width, colspecs, names, dtype)
File "C:\Users\lgalmeida\Desktop\CNPJ-full-master\cfwf.py", line 97, in _cfwf_chunck
.astype(col_type))
File "C:\Users\lgalmeida\AppData\Local\Programs\Python\Python36\lib\site-packages\pandas\core\generic.py", line 5691, in astype
**kwargs)
File "C:\Users\lgalmeida\AppData\Local\Programs\Python\Python36\lib\site-packages\pandas\core\internals\managers.py", line 531, in astype
return self.apply('astype', dtype=dtype, **kwargs)
File "C:\Users\lgalmeida\AppData\Local\Programs\Python\Python36\lib\site-packages\pandas\core\internals\managers.py", line 395, in apply
applied = getattr(b, f)(**kwargs)
File "C:\Users\lgalmeida\AppData\Local\Programs\Python\Python36\lib\site-packages\pandas\core\internals\blocks.py", line 534, in astype
**kwargs)
File "C:\Users\lgalmeida\AppData\Local\Programs\Python\Python36\lib\site-packages\pandas\core\internals\blocks.py", line 633, in _astype
values = astype_nansafe(values.ravel(), dtype, copy=True)
File "C:\Users\lgalmeida\AppData\Local\Programs\Python\Python36\lib\site-packages\pandas\core\dtypes\cast.py", line 702, in astype_nansafe
return arr.astype(dtype, copy=True)
ValueError: could not convert string to float:

Organizar visualização no viz em html

É possível organizar a visualização de alguma maneira? por exemplo, em consultas do nivel 2 ou mais os sócios e empresas se sobrepõem e é dificil visualizar quem é quem, é preciso arrastar as "bolinhas" até que eles se auto organizem.
Existe alguma maneira de agrupar os resultados automaticamente em torno dos sócios, por exemplo?
Agradeço desde já

Não é possível carregar dados do conjunto de dados 2020-01-25

Obrigado por esse codigo, ta muito bom!

Rodei pra criar um arquivo sqlite usando o ultimo dataset de 2019 e funcionou bem.
Tentei com o dataset mais recente e não funcionou. Rodei algumas vezes e todas elas, recebi o seguinte:

V/c/w/r/c/CNPJ-full (master|✚1…) $ python3 cnpj.py "../cnpj-data/" sqlite "../cnpj-db" --dir --noindex                                      (CNPJ-full)
Iniciando processamento em 2020-03-17 10:29:46.207939
Processando arquivo: ../cnpj-data/DADOS_ABERTOS_CNPJ_01.zip
Bloco 1: até linha 100000. [Emps:0|Socios:0|CNAEs:0]
INFORMACOES DO HEADER:
Nome do arquivo: F.K032001K
Data de gravacao: 20200125
Numero da remessa: 00000001
Processando arquivo: ../cnpj-data/DADOS_ABERTOS_CNPJ_02.zipNAEs:475000]
Processando arquivo: ../cnpj-data/DADOS_ABERTOS_CNPJ_03.zipNAEs:1030994]
Processando arquivo: ../cnpj-data/DADOS_ABERTOS_CNPJ_04.zipNAEs:1605533]
Processando arquivo: ../cnpj-data/DADOS_ABERTOS_CNPJ_06.zipNAEs:2136399]
Processando arquivo: ../cnpj-data/DADOS_ABERTOS_CNPJ_07.zipNAEs:2968203]
Processando arquivo: ../cnpj-data/DADOS_ABERTOS_CNPJ_08.zip|CNAEs:3990374]
Processando arquivo: ../cnpj-data/DADOS_ABERTOS_CNPJ_09.zip|CNAEs:5123967]
Processando arquivo: ../cnpj-data/DADOS_ABERTOS_CNPJ_10.zip|CNAEs:6094889]
Processando arquivo: ../cnpj-data/DADOS_ABERTOS_CNPJ_11.zip|CNAEs:7297802]
Processando arquivo: ../cnpj-data/DADOS_ABERTOS_CNPJ_12.zip|CNAEs:8514294]
Processando arquivo: ../cnpj-data/DADOS_ABERTOS_CNPJ_13.zip|CNAEs:9734752]
Processando arquivo: ../cnpj-data/DADOS_ABERTOS_CNPJ_14.zip|CNAEs:10800774]
Processando arquivo: ../cnpj-data/DADOS_ABERTOS_CNPJ_15.zip|CNAEs:12019058]
Processando arquivo: ../cnpj-data/DADOS_ABERTOS_CNPJ_16.zip|CNAEs:13243598]
Processando arquivo: ../cnpj-data/DADOS_ABERTOS_CNPJ_17.zip|CNAEs:14384964]
Processando arquivo: ../cnpj-data/DADOS_ABERTOS_CNPJ_19.zip|CNAEs:15531292]
Processando arquivo: ../cnpj-data/DADOS_ABERTOS_CNPJ_20.zip|CNAEs:15823708]
Bloco 44: até linha 4400000. [Emps:38842261|Socios:23688771|CNAEs:16275733]
INFORMACOES DE CONTROLE:
Total de registros de empresas: 43101755
Total de registros de socios: 26807594
Total de registros de CNAEs secundarios: 17745669
Total de registros incluindo header e trailler: 87655020

Conversao concluida. Validando quantidades:
Total de registros de empresas: 38882738 !INCONSISTENTE!
Total de registros de socios: 23711369 !INCONSISTENTE!
Total de registros de CNAEs: 16295409 !INCONSISTENTE!
Atencao! Foi detectada inconsistencia entre as quantidades lidas e as informacoes de controle do arquivo.

Arquivo SQLITE gerado: ../cnpj-db/CNPJ_full.db
OBS: Uso de índices altamente recomendado!

Processamento concluido em 2020-03-17 11:50:54.066860

Você rodou com o dataset atual? funcionou pra você? tem alguma idea?

Gerando SQLite vazio

Estou executando o script sem problemas, instalei todas as dependências, ele processa os arquivos sem exibir nenhum erro, porem esta gerando um arquivo .db sem dados

Finalização do Processo:
Processo Finalizado

Arquivo gerado:
Arquivo Final

Alguém teve este problema ou sabe como resolver?
Obrigado!

Erro em conversão float

Baixei recentemente a base, e esta dando o seguinte erro ao executar o arquivo DADOS_ABERTOS_CNPJ_10.zip, os demais exportou sem problemas.

Iniciando processamento em 2021-02-09 09:15:26.677458
Processando arquivo: input/DADOS_ABERTOS_CNPJ_10.zip
capital_social <class 'float'>ps:201650|Socios:82612|CNAEs:115738]
line_type
1 00000000500000
1 00000001500000
1 00000000500000
1 00000005000000
1 00000000000100
...
1 00000000000000
1 00000000000000
1 00000001500000
1 00000000500000
1 00000000000100
Name: capital_social, Length: 94446, dtype: object
Traceback (most recent call last):
File "/media/thiago/THIAGOSTORE/projects/CNPJ-full/cfwf.py", line 103, in _cfwf_chunck
data_dict[ltype][col_name] = (data_dict[ltype][col_name]
File "/home/thiago/.pyenv/versions/3.8.6/envs/cnpj/lib/python3.8/site-packages/pandas/core/generic.py", line 5874, in astype
new_data = self._mgr.astype(dtype=dtype, copy=copy, errors=errors)
File "/home/thiago/.pyenv/versions/3.8.6/envs/cnpj/lib/python3.8/site-packages/pandas/core/internals/managers.py", line 631, in astype
return self.apply("astype", dtype=dtype, copy=copy, errors=errors)
File "/home/thiago/.pyenv/versions/3.8.6/envs/cnpj/lib/python3.8/site-packages/pandas/core/internals/managers.py", line 427, in apply
applied = getattr(b, f)(**kwargs)
File "/home/thiago/.pyenv/versions/3.8.6/envs/cnpj/lib/python3.8/site-packages/pandas/core/internals/blocks.py", line 673, in astype
values = astype_nansafe(vals1d, dtype, copy=True)
File "/home/thiago/.pyenv/versions/3.8.6/envs/cnpj/lib/python3.8/site-packages/pandas/core/dtypes/cast.py", line 1097, in astype_nansafe
return arr.astype(dtype, copy=True)
ValueError: could not convert string to float: ''

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "cnpj.py", line 463, in
main()
File "cnpj.py", line 455, in main
cnpj_full(input_list, tipo_output, output_path)
File "cnpj.py", line 223, in cnpj_full
for i_bloco, bloco in enumerate(dados):
File "/media/thiago/THIAGOSTORE/projects/CNPJ-full/cfwf.py", line 119, in _cfwf_chunck_reader
yield _cfwf_chunck(chunk, type_width, colspecs, names, dtype)
File "/media/thiago/THIAGOSTORE/projects/CNPJ-full/cfwf.py", line 109, in _cfwf_chunck
raise Exception(e)
Exception: could not convert string to float: ''

sqlite3.OperationalError: no such table: main.empresas

Tentando rodar em virtualenv com python-3.7 e pandas-0.24.2 instalados:

$ python3 cnpj.py "/path/to/CNPJ" sqlite "/path/to/data" --dir
Iniciando processamento em 2019-06-19 09:55:55.282829

Conversao concluida. Validando quantidades:
Total de registros de empresas: 0 ok
Total de registros de socios: 0 ok
Total de registros de CNAEs: 0 ok

Arquivo SQLITE gerado: /home/bcbernardo/Dados/RFB/CNPJ/20190515/CNPJ_full.db
OBS: Uso de índices altamente recomendado!
              

Criando índices...
Essa operaçao pode levar vários minutos.
    
Traceback (most recent call last):
  File "cnpj.py", line 441, in <module>
    main()
  File "cnpj.py", line 436, in main
    cnpj_index(output_path)
  File "cnpj.py", line 374, in cnpj_index
    cursorBD.execute(sql_stmt)
sqlite3.OperationalError: no such table: main.empresas

Pergunto: o esquema do banco de dados para onde serão carregados os registros já precisa estar definido antes de rodar o script?

Divisão por UF

Esta ocorrendo erro ao separar .csv por UF, no arquivo ".env.example" eu deixei desta forma:
"FILES_LOCATION=/output/"
"FILES_LOCATION=/output"

No meu computador o arquivo esta na pasta "C:\Users\meunome\AppData\Local\Programs\Python\Python37-32\output\empresas.csv"

ERRO: ("Traceback (most recent call last):
File "separar_csv_por_uf.py", line 10, in
with codecs.open(location + file, 'r+', 'utf-8') as empresas:
TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'

Não sei oque pode ser, pode me ajudar?

Atualização trimestral Nov/19

Boa Noite! Alguém tem informações se a receita irá atualizar a base esse mês? Geralmente eles atualizam com 3 meses, mas até agora nada.

Suporte a outros bancos via SQLAlchemy

Gostaria de saber se existe o interesse adicionar suporte para outros bancos via SQLAlchemy?

Estou realizando alguns testes ref. a importação dos dados para PostgreSQL e verifiquei que é relativamente simples adicionar o suporte, porém não quero fazer PRs desnecessariamente.

Erro no separar_csv_por_uf.py

O código para separar por uf o csv, não está pegando a ultima linha do csv, fiz uns testes com um csv menor e todos deram o mesmo erro.

Ponto e vírgula dentro de valores, interferindo na importação do csv com o pandas

            Me deparei com um problema, ao importar o csv gerado pelo seu script com o módulo pandas. Mais especificamente , ao usar a função df.read_csv()  . Existem alguns valores dentro da coluna 'complemento' que tem um ponto e vírgula .

"LETRA:A;".
Mesmo eu estipulando o separador como uma vírgula, a função do pandas lê o ponto e vírgula como um separador , e cria um campo de valor vazio, comprometendo a legibilidade da tabela. Estou terminando um script que faz algumas modificações na tabela , como substituir o número CNAE pelo seu significado,entre outros , e também de nomear as colunas. E depois manda tudo pra um banco de dados SQL.
Você acredita que seria possível inserir um código que identificasse quais strings tem um ' ; ' ou até mesmo uma vírgula(poderia usar o REGEX) e a excluísse? Em quais dos arquivos poderia incluí-lo?

Exportar para um banco MySQL

Estava fazendo umas gambiarras para fazer isso, então resolvi organizar melhor a ideia, e se alguém já fez algo do tipo gostaria que avaliasse minha solução também.

Download dos arquivos

Não seria interessante que o programa fizesse o download dos arquivos tbm?

Enfrento o problema de minha conexão ser lenta, então caso o programa fizesse o download para mim seria útil, facilitando tbm quando eu queira atualizar os dados. Assim, estou escrevendo fazendo um branch próprio com esta funcionalidade, gostaria de saber se existe interesse em adiciona-la à este master.

Nota: peço desculpas por qualquer equivoco, dado minha inexperiência sobre programação.

Erro ao processar aquivo

Teria como me ajudar a usar o código, estou tentando e o mesmo da erro ao transformar em csv.

python3 cnpj.py ./dados1\ (1)/ csv /home/matheus/
Iniciando processamento em 2019-11-20 23:09:44.467879
Processando arquivo: ./dados1 (1)/
Traceback (most recent call last):
File "cnpj.py", line 463, in
main()
File "cnpj.py", line 455, in main
cnpj_full(input_list, tipo_output, output_path)
File "cnpj.py", line 220, in cnpj_full
encoding='ISO-8859-15')
File "/home/matheus/Downloads/FlareGet/Others/CNPJ-full-master/cfwf.py", line 49, in read_cfwf
encoding=encoding)
File "/home/matheus/anaconda3/lib/python3.7/site-packages/pandas/io/parsers.py", line 803, in read_fwf
return _read(filepath_or_buffer, kwds)
File "/home/matheus/anaconda3/lib/python3.7/site-packages/pandas/io/parsers.py", line 429, in _read
parser = TextFileReader(filepath_or_buffer, **kwds)
File "/home/matheus/anaconda3/lib/python3.7/site-packages/pandas/io/parsers.py", line 895, in init
self._make_engine(self.engine)
File "/home/matheus/anaconda3/lib/python3.7/site-packages/pandas/io/parsers.py", line 1132, in _make_engine
self._engine = klass(self.f, **self.options)
File "/home/matheus/anaconda3/lib/python3.7/site-packages/pandas/io/parsers.py", line 3605, in init
PythonParser.init(self, f, **kwds)
File "/home/matheus/anaconda3/lib/python3.7/site-packages/pandas/io/parsers.py", line 2225, in init
memory_map=self.memory_map)
File "/home/matheus/anaconda3/lib/python3.7/site-packages/pandas/io/common.py", line 424, in _get_handle

Erro separar csv por uf

Boa tarde,

estou com o seguinte erro ao tentar separar o arquivo empresas.csv por uf.

E:\CNPJ-full-master\extra_csv>py separar_csv_por_uf.py
Traceback (most recent call last):
File "separar_csv_por_uf.py", line 9, in
with codecs.open(location + file, 'r+', 'utf-8') as empresas:
TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'

O arquivo env.example está assim:
FILES_LOCATION=\E:\TEMP

Dados Públicos CNPJ - Conversão para CSV/SQLITE e Consultas

Boa tarde, parabéns ao desenvolvedores muito bacana a ideia, consegui rodar aqui de boa no entanto quando faço a consulta ele gera o Gráfico abro no navegador mais não aparece as informações da empresa como na documentação aparece um Quadro preto junto ao Gráfico com os dados da empresa... Alguém pode me ajudar? Só aparece o nome dos sócios ligado um ponto ao outro!

Erro - Divisão por Cidade

Estou recebendo este erro ao separar arquivo por Cidade, alguém já teve este erro?

Traceback (most recent call last):
File "separar_csv_por_cidade.py", line 36, in
uf_file.writelines(line)
File "C:\Users\Alex Basto\AppData\Local\Programs\Python\Python37\lib\encodings\cp1252.py", line 19, in encode
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode character '\x8f' in position 0: character maps to

Erro de encoding

Iniciando processamento em 2019-10-11 14:08:52.841146
Processando arquivo: ../DADOS_ABERTOS_CNPJ_01.zip
Traceback (most recent call last):
  File "cnpj.py", line 463, in <module>
    main()
  File "cnpj.py", line 455, in main
    cnpj_full(input_list, tipo_output, output_path)
  File "cnpj.py", line 229, in cnpj_full
    end='\r')
UnicodeEncodeError: 'ascii' codec can't encode character '\xe9' in position 11: ordinal not in range(128)

Falha ao converter string to float após 45mi linhas

O problema acontecia antes de mudar a versão do cnpj.py.
Criei um .bat que chama: Z:\GitHub\dadosCNPJ\venv\Scripts\python.exe cnpj.py "Z:\GitHub\dadosCNPJ\cnpj\F.K032001K.D90511" "csv" "Z:\GitHub\dadosCNPJ"

Estava acompanhando o progresso, a última visualização que tive foi que tinha passado das 45.000.000 linhas (informação de saída do progresso do programa).

Gerou um empresa.csv de 6,513GB, com 22.067.491 linhas (fiz consulta pelo Excel colocando uma coluna de índices)

O arquivo de CNPJ é do dia 22/05/2019 de 97,433GB - F.K032001K.D90511

Ao que me parece, a string que ele não consegue converter para float é " ", um espaço, pois no prompt é o que dá para selecionar, um espaço vazio.

Z:\GitHub\dadosCNPJ>Z:\GitHub\dadosCNPJ\venv\Scripts\python.exe cnpj.py "Z:\GitH
ub\dadosCNPJ\cnpj\F.K032001K.D90511" "csv" "Z:\GitHub\dadosCNPJ"
Traceback (most recent call last):7900000.
File "cnpj.py", line 304, in
main()
File "cnpj.py", line 293, in main
cnpj_full(input_path, tipo_output, output_path)
File "cnpj.py", line 169, in cnpj_full
for i, dado in enumerate(dados):
File "Z:\GitHub\dadosCNPJ\cfwf.py", line 104, in _cfwf_chunck_reader
yield _cfwf_chunck(chunk, type_width, colspecs, names, dtype)
File "Z:\GitHub\dadosCNPJ\cfwf.py", line 94, in _cfwf_chunck
.astype(col_type))
File "Z:\GitHub\dadosCNPJ\venv\lib\site-packages\pandas\core\generic.py", line
5691, in astype
**kwargs)
File "Z:\GitHub\dadosCNPJ\venv\lib\site-packages\pandas\core\internals\manager
s.py", line 531, in astype
return self.apply('astype', dtype=dtype, **kwargs)
File "Z:\GitHub\dadosCNPJ\venv\lib\site-packages\pandas\core\internals\manager
s.py", line 395, in apply
applied = getattr(b, f)(**kwargs)
File "Z:\GitHub\dadosCNPJ\venv\lib\site-packages\pandas\core\internals\blocks.
py", line 534, in astype
**kwargs)
File "Z:\GitHub\dadosCNPJ\venv\lib\site-packages\pandas\core\internals\blocks.
py", line 633, in _astype
values = astype_nansafe(values.ravel(), dtype, copy=True)
File "Z:\GitHub\dadosCNPJ\venv\lib\site-packages\pandas\core\dtypes\cast.py",
line 702, in astype_nansafe
return arr.astype(dtype, copy=True)
ValueError: could not convert string to float:

Z:\GitHub\dadosCNPJ>pause
Pressione qualquer tecla para continuar. . .

Erro no zip

Olá
Por favor, o arquivo que baixo da Receita - DADOS_ABERTOS_CNPJ.zip
(5.147.030.696 bytes) - apresenta um erro quando descompacto - uso o
Peazip: ele não descompacta todo, mostra Erro fatal ocorreu em 3m57s -
podem estar bloqueados, não acessível ou corrompidos

No Terminal também: unzip DADOS_ABERTOS_CNPJ.zip
Archive: DADOS_ABERTOS_CNPJ.zip
warning [DADOS_ABERTOS_CNPJ.zip]: 852063295 extra bytes at beginning or within zipfile
(attempting to process anyway)
error [DADOS_ABERTOS_CNPJ.zip]: start of central directory not found;
zipfile corrupt.
(please check that you have transferred or created the zipfile in the
appropriate BINARY mode and that you have compiled UnZip properly)

Você também teve esse erro?

Parabéns pela iniciativa!

Abraço

Utilização

Poderia me auxiliar à utilizar essa ferramenta através do windows, com python 3?

Consigo executar via PowerShell?

Obrigado.

Exportar no formato .sql

É possível exportar no formato .sql?

e como faz pra subir um arquivo tão grande como esse ?

Erro de permissão

olá, estou tentando rodar a linha

python3 cnpj.py "E:\Leticia\Documents\DADOS_ABERTOS_CNPJ\F.K032001K.D81106D" csv "E:\Leticia\Documents\DADOS_ABERTOS_CNPJ"

Porem, fica me dando esse erro:

Traceback (most recent call last):
  File "cnpj.py", line 258, in <module>
    main()
  File "cnpj.py", line 255, in main
    cnpj_full(input_path, tipo_output, output_path)
  File "cnpj.py", line 154, in cnpj_full
    chunksize=CHUNKSIZE)
  File "E:\Leticia\Documents\projetos\CNPJ-full\CNPJ-full\cfwf.py", line 46, in read_cfwf
    nrows=nrows)
  File "E:\Program Files\Python37\lib\site-packages\pandas\io\parsers.py", line 803, in read_fwf
    return _read(filepath_or_buffer, kwds)
  File "E:\Program Files\Python37\lib\site-packages\pandas\io\parsers.py", line 429, in _read
    parser = TextFileReader(filepath_or_buffer, **kwds)
  File "E:\Program Files\Python37\lib\site-packages\pandas\io\parsers.py", line 895, in __init__
    self._make_engine(self.engine)
  File "E:\Program Files\Python37\lib\site-packages\pandas\io\parsers.py", line 1132, in _make_engine
    self._engine = klass(self.f, **self.options)
  File "E:\Program Files\Python37\lib\site-packages\pandas\io\parsers.py", line 3605, in __init__
    PythonParser.__init__(self, f, **kwds)
  File "E:\Program Files\Python37\lib\site-packages\pandas\io\parsers.py", line 2225, in __init__
    memory_map=self.memory_map)
  File "E:\Program Files\Python37\lib\site-packages\pandas\io\common.py", line 427, in _get_handle
    f = open(path_or_buf, mode, errors='replace', newline="")
PermissionError: [Errno 13] Permission denied: 'E:\\Leticia\\Documents\\DADOS_ABERTOS_CNPJ\\F.K032001K.D81106D'

Estou rodando com o PowerShell em modo admin. Poderia me dar uma ajuda sobre o que está acontecendo?

O script retorna um resultado vazio

Recentemente a Receita Federal liberou uma nova versão dos dados públicos CNPJ (07/ago/2019). Baixei os arquivos e extraí todos, gerando 20 arquivos de 5.08Gb cada, porém, quando rodo o script cnpj.py, especificando o caminho de entrada e saída, o resultado retornado é:

Total de registros de empresas: 0 ok
Total de registros de socios: 0 ok
Total de registros de CNAEs: 0 ok

Alguém também está enfrentando este problema com o novo arquivo?

Erro ao executar

Não estou conseguindo executar o comando python3 cnpj.py <tipo de saída:csv ou sqlite> <pasta saída> --dir

Apresenta um erro de sintaxe:

python3 cnpj.py '/Dados_Públicos_Receita_Federal' csv '/analise_cnpj' --dir

File "", line 1
python3 cnpj.py '/Dados_Públicos_Receita_Federal' csv '/analise_cnpj' --dir
^
SyntaxError: invalid syntax

O jupyter notebook está aberto na pasta TI,
Nesta pasta tem a pasta Dados_Publicos_Receita_Federal que informei acima e também nesta mesma pasta TI está a pasta de saída analise_cnpj.

Poderiam me ajudar?

Resolvido, faltou importar o código

Arquivos CSV dump

Olá,

vocês tem os arquivos após tratamento disponíveis para download?

Não estou conseguindo baixar os dados da receita para processar com o pacote de vocês.

Valeu :)

Quantidade de linhas

Fiz o processo apresentado no readme.

Porém a quantidade de linhas ficou divergente.

Empresas 19.651.677
Sócios 9.212.053
CNAES 21.852.345

Está correto?

Sistema de Consulta Web

Pessoal,

Baseado no resultado do CNPJ-full, estou construido um sistema de consulta na web. A ideia é quem tenha um tela de consultas rápidas e fáceis. Incluído a ideia de gerar o Grafo. No momento ainda está bem no início.

Site do projeto https://github.com/bjverde/cnpjrfb

Tela de Exemplo

Retorno Vazio

(base) Mesa-Luciano:CNPJ-full-mastedr Fagner$ python3 cnpj.py "/Users/jonatas/Desktop/CNPJ-full-mastedr/dados.zip" csv "data"
Iniciando processamento em 2019-06-25 10:25:43.261103
Processando arquivo: /Users/jonatas/Desktop/CNPJ-full-mastedr/dados.zip
Processando bloco 1: até linha 200000.
Conversao concluida. Validando quantidades:
Total de registros de empresas: 0 ok
Total de registros de socios: 0 ok
Total de registros de CNAEs: 0 ok
Arquivos CSV gerados na pasta data.
Processamento concluido em 2019-06-25 10:25:43.275502

Saberia me informar o por que isso ocorre?Ele cria mas vem vazio

ERRO: Nenhum arquivo válido encontrado no diretório!

Fiz da seguinte forma:

ronaldo@rpo-pc:~/Desktop/CNPJ-full-master$ python3 cnpj.py media/ronaldo/Arquivos/Projetos/Empresas-Projeto-CNPJ/cnpj_cadastro/dados/ sqlite media/ronaldo/Arquivos/Projetos/Empresas-Projeto-CNPJ/cnpj_cadastro/dados/ --dir

ERRO: Nenhum arquivo válido encontrado no diretório!

Aponteir o diretorio que salvei os arquivos que se encontram zipados exatamente do jeito que forma baixados. Podem ajudar?

Como contribuir?

Gostaria de contribuir, por exemplo, tenho um script q baixa os CSVs direto da RFB e outras coisas a serem adicionadas. Como faço pra ajudar?

Dúvidas sobre as CNAEs

Olá,

Em 2007 houve uma grande mudança na metodologia da classificação de atividades no Brasil (CNAE 1.0 para CNAE 2.0). A minha dúvidas é se no arquivo fonte da Receita Federal do Brasil há a data de atualização das CNAEs das empresas? Ou alguma informação que faça referência a inserção de CNAEs secundárias. Utilizando o cnpj.py para compilar os dados da Receita, não obtive a data de inserção, alteração de CNAEs (primária ou secundária).

Aproveitando, gostaria de parabenizar e agradecer pela ferramenta de compilação dos dados públicos de cadastro da RFB. Está ajudando muito em minhas pesquisas acadêmicas.

Como pesquisar apenas endereço (ou apenas alguns campos em específico)

Pessoal, sou muito novato no mundo da programação, então tomara que compreendam minha pergunta:

Quero usar o aplicativo para buscar o endereço de empresas através do CNPJ, mas (se possível) gostaria que o resultado retornasse no próprio python e não em um arquivo exportado. (não sei se usei os termos corretos)

Por exemplo, ao usar o comando:
python consulta.py cnpj 00000000000191

O resultado fosse um array (ou algo parecido) contendo as informações daquele CNPJ, como na foto de capa do aplicativo:
a

Isso é possível?

CNPJ que não existem

Boa tarde, consegui extrair tudo usando os .zip atualizados do site da receita, o problema não é no script, mas com os dados da receita, pego por exemplo, CNPJ do mes de janeiro de 2020, nem todos estão na base pública da receita, mas se for no site da receita e consultar o CNPJ individual ele existe, alguém sabe de algo? de ter muitos cnjs que não tem na base ma existirem?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.