App local (Node + SQLite) para captura, tratamento e exportacao de leads comerciais, com dashboard de gestao, login/usuarios e integracao Z-PRO. Co-Authored-By: Claude <noreply@anthropic.com>
45 lines
1.7 KiB
Bash
45 lines
1.7 KiB
Bash
#!/bin/bash
|
|
# Baixa a base completa de CNPJ da Receita Federal (extrato mais recente) a partir do
|
|
# espelho publico da Casa dos Dados (mesma base oficial, servida via Cloudflare).
|
|
# Uso: bash scripts/baixar-base-rfb.sh
|
|
set -e
|
|
|
|
BASE_URL="https://dados-abertos-rf-cnpj.casadosdados.com.br/arquivos/2026-06-14"
|
|
DEST_DIR="prospeccao/cnpj/rfb-raw"
|
|
mkdir -p "$DEST_DIR"
|
|
|
|
FILES=(
|
|
Cnaes.zip Motivos.zip Municipios.zip Naturezas.zip Paises.zip Qualificacoes.zip Simples.zip
|
|
Empresas0.zip Empresas1.zip Empresas2.zip Empresas3.zip Empresas4.zip
|
|
Empresas5.zip Empresas6.zip Empresas7.zip Empresas8.zip Empresas9.zip
|
|
Estabelecimentos0.zip Estabelecimentos1.zip Estabelecimentos2.zip Estabelecimentos3.zip Estabelecimentos4.zip
|
|
Estabelecimentos5.zip Estabelecimentos6.zip Estabelecimentos7.zip Estabelecimentos8.zip Estabelecimentos9.zip
|
|
Socios0.zip Socios1.zip Socios2.zip Socios3.zip Socios4.zip
|
|
Socios5.zip Socios6.zip Socios7.zip Socios8.zip Socios9.zip
|
|
)
|
|
|
|
TOTAL=${#FILES[@]}
|
|
COUNT=0
|
|
|
|
for FILE in "${FILES[@]}"; do
|
|
COUNT=$((COUNT+1))
|
|
DEST="$DEST_DIR/$FILE"
|
|
|
|
if [ -f "$DEST" ]; then
|
|
EXPECTED=$(curl -sI --max-time 20 "$BASE_URL/$FILE" | grep -i content-length | tr -d '\r' | awk '{print $2}')
|
|
ACTUAL=$(stat -c%s "$DEST" 2>/dev/null || stat -f%z "$DEST" 2>/dev/null)
|
|
if [ -n "$EXPECTED" ] && [ "$EXPECTED" == "$ACTUAL" ]; then
|
|
echo "[$COUNT/$TOTAL] $FILE ja existe e esta completo ($ACTUAL bytes). Pulando."
|
|
continue
|
|
fi
|
|
fi
|
|
|
|
echo "[$COUNT/$TOTAL] baixando $FILE ..."
|
|
curl -sS --retry 3 --retry-delay 5 --max-time 1800 -o "$DEST" "$BASE_URL/$FILE"
|
|
SIZE=$(stat -c%s "$DEST" 2>/dev/null || stat -f%z "$DEST" 2>/dev/null)
|
|
echo "[$COUNT/$TOTAL] $FILE concluido ($SIZE bytes)"
|
|
done
|
|
|
|
echo "download completo."
|
|
du -sh "$DEST_DIR"
|