Consulta Correios
Publicado por Renê Barbosa de Figueirêdo Lima (última atualização em 05/01/2015)
[ Hits: 5.995 ]
Homepage: http://renebarbosa.com
Download 1419900148.consultacorreios (versão 2)
Script para consulta de encomendas no sistema dos Correios.
Versão 2 - Enviado por Renê Barbosa de Figueirêdo Lima em 29/12/2014
Changelog: Adicionada mais uma alteração para limpeza da saída HTML extraída do site dos Correios.
Download 1419900148.consultacorreios
#!/bin/bash
#
# consultacorreios - Rastreio de encomendas pelo terminal
#
# Copyright (C) 2014 Renê Barbosa
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# TODO:
#
# - Melhorar sistema de validação de códigos;
# - Enviar e-mail (SMS?) a cada alteração de status;
#
function checa_correio() {
IFS="" #Necessario para a formatação de saída da variável $checa
curl=`which curl`
if [ $? -eq 0 ]; then
checa=`$curl -s "http://websro.correios.com.br/sro_bin/txect01$.QueryList?P_LINGUA=001&P_TIPO=001&P_COD_UNI=$codigo"| grep "<tr><td " | sed 's/<tr><td rowspan=[1?2]>//g' | sed 's/<tr><td colspan=2>//g' | sed 's/<\/td><t[r?d]>/ /g' | sed 's/<FONT COLOR="000000">//g' | sed 's/<\/font>//g' | sed 's/<\/td><\/tr>//g'`
if [ `echo ${checa} | wc -l` -gt 1 ]; then
echo $checa
else
echo "Nenhum registro encontrado. Codigo errado ou encomenda ainda nao foi cadastrada no sistema dos Correios."
fi
else
echo "cURL não está instalado, por favor instale e execute novamente."
fi
}
# Precisa melhorar o sistema de validação, a função abaixo atualmente só verifica se o código informado possui 14 caracteres
# Baseado na maioria dos códigos de rastreamento que possuo.
function testa_codigo() {
if [ `echo $codigo | wc -c` -eq 14 ];then
checa_correio $codigo
else
echo "Codigo Inválido"
fi
}
if [ $# -eq 0 ]; then
echo "Faltando parametro, por favor informar código de rastreio."
exit 1;
elif [ $# -eq 1 ]; then
codigo=$1
testa_codigo $codigo
else
cor="\e[31m"
normal="\e[0m"
qtd=$#;
for a in `seq 1 $qtd`; do
echo ""
code="echo \$${a}";
codigo=`eval ${code}`;
echo -e "$cor$codigo:$normal"
testa_codigo $codigo
echo ""
done
fi
Limpar o cache do squid3 sem parar a internet por muito tempo
Mantendo o transmission-daemon funcionando
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
Preciso recuperar videos *.mp4 corrompidos (0)
\Boot sem espaço em disco (Fedora KDE Plasma 42) (3)
Programa fora de escala na tela do pc (38)









