[BASH] Script para obtener datos de una persona

Iniciado por Barbol, Abril 11, 2024, 11:38:07 AM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Abril 11, 2024, 11:38:07 AM Ultima modificación: Abril 11, 2024, 02:22:53 PM por AXCESS
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta

Buenas. Esta es mi primer publicación en el foro. Les dejo este script que te trae los datos de una persona a partir de su DNI. Ideal para las altas de usuario cuando no te pasan todos los datos.



Código: text
#!/bin/bash

#[by fleiva]
#DIRBASE=/home/barbol/fullname
DIRBASE=~/fullname
NC='\033[0m'            # No Color
BBlue='\033[1;34m'      # Blue
UPurple='\033[4;35m'    # Purple

function limpiarArchivo () { #Recibe el nombre de archivo que tiene que procesar
        echo "" > $DIRBASE"/nombreLimpio.txt"
        while IFS= read -r line
        do
                line="${line#"${line%%[![:space:]]*}"}"   # elimina los espacios por delante
                line="${line%"${line##*[![:space:]]}"}"   # elimina los espacios por detrás
                echo $line >>$DIRBASE"/nombreLimpio.txt"
        done < $1
        sed -i '/^ *$/d' $DIRBASE"/nombreLimpio.txt" #elimina filas en blanco
}

function borrarArchivos () {
        rm -rf $DIRBASE/curl.txt
        rm -rf $DIRBASE/filaSucia.txt
        rm -rf $DIRBASE/parteFilaSucia.txt
        rm -rf $DIRBASE/partecitaFilaSucia.txt
        rm -rf $DIRBASE/nombreEspacio.txt
        rm -rf $DIRBASE/nombreLimpio.txt
}

function ConsultarNosis () {
    texto="$1"
    endpoint="https://informes.nosis.com/Home/Buscar"
    body="Texto=$texto"

    # Realizar la solicitud HTTP POST
    jsonResponse=$(curl -s -X POST -d "$body" "$endpoint")

    # Verificar la respuesta JSON
    entidadesEncontradas=$(echo "$jsonResponse" | jq '.EntidadesEncontradas')

    count=$(echo "$entidadesEncontradas" | jq 'length')

# Verificar si se encontraron entidades
    if [[ $count -gt 0 ]]; then
        for ((i = 0; i < $count; i++)); do
            documento=$(echo "$entidadesEncontradas" | jq -r ".[$i].Documento")
            razonSocial=$(echo "$entidadesEncontradas" | jq -r ".[$i].RazonSocial")
            provincia=$(echo "$entidadesEncontradas" | jq -r ".[$i].Provincia")
            echo "============ NOSIS ============" | lolcat
            echo -e "${BBlue}CUIL:$NC $documento"
            echo -e "${BBlue}NOMBRE:$NC $razonSocial"
            echo -e "${BBlue}PROVINCIA:$NC $provincia"
            echo "===============================" | lolcat
        done
    else
        echo "===========================================" | lolcat
        echo "🔴 No se encontraron datos en nosis.com 🔴"
        echo "===========================================" | lolcat
    fi
}

#INICIO PROGRAMA
cd $DIRBASE

ConsultarNosis $1

curl -s https://www.cuitonline.com/search.php\?q\=$1 | grep -a breadcrumbsContainer | cut -d'<' -f 10 | cut -d'>' -f 2 > $DIRBASE"/nombreLimpio.txt"
cantPalabras=`wc -w $DIRBASE"/nombreLimpio.txt" | awk '{print $1}'`;
        if test $cantPalabras -eq 0;
        then
                echo "================================================" | lolcat
                echo "🔴 No se encontraron datos en cuitonline.com 🔴"
                echo "================================================" | lolcat
        else
                echo ""
                echo "============ CUITONLINE ============" | lolcat
                resultado=`cat $DIRBASE"/nombreLimpio.txt"`
                echo "🟢 $resultado 🟢"
                echo "====================================" | lolcat
        fi


borrarArchivos



Fer Leiva - SysAdmin 🚀

Es obvio que es para Argentina.

Pregunta...

El script busca en internet o posee una Base de Datos interna. Intuyo que en internet?

Es posible agregarle, modificarle cierta Base de Datos, así como el patrón de búsqueda, como pudiera ser el # de móvil, en vez del DNI, y que tenga la misma funcionalidad?. Esta sería una modificación un tanto pretenciosa, sepa disculparme por el alto vuelo. Sería como un explorer o buscador de BD.

Está muy bueno su trabajo.

Una pena no ser argentino...
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta

No tienes permitido ver enlaces. Registrate o Entra a tu cuenta

Realiza una petición HTTP/POST hacia "No tienes permitido ver enlaces. Registrate o Entra a tu cuenta".
PGP :: <D82F366940155CB043147178C4E075FC4403BDDC>

~ DtxdF

Sí lo ví en el script, pero siempre es bueno preguntar.

Está muy útil.
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta