fabioserpa/CNPJ-full

sqlite3.OperationalError: no such table: main.empresas

bcbernardo opened this issue · 3 comments

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?

Os arquivos zip baixados da RF estão dentro da pasta "/path/to/CNPJ"?
Faltou colocar no script um tratamento melhor para o caso de não ter nenhum arquivo zip na pasta, mas enfim, é necessário que os arquivos zip estejam lá!

E não é necessário ter nenhum arquivo de BD criado antes do script. O script cria o BD sqlite na hora.

Estava tentando usar os arquivos descompactados. Rodei novamente no diretório com os arquivos .zip e funcionou como o esperado.