Classe, WebService e RSS (PHP) para rastreamento de encomendas nos Correios



    Olá!

    Depois de meses sem escrever estou voltando com uma classe muito útil e simples que nunca vi em lugar nenhum. É uma classe para rastrear encomendas nos correios que eu escrevi em PHP, que retorna um vetor com cada modificação de status lá.

    Vamos direto ao ponto, confira o exemplo:

    http://ferrari.eti.br/correios/samples/class.php

    E para deixar a brincadeira mais divertida, fiz também um webservice com suporte a Json(padrão), phpserializeXML e um modo dump, para visualização:

    http://ferrari.eti.br/correios/webservice/?q=PB151832535BR
    http://ferrari.eti.br/correios/webservice/?q=PB151832535BR&f=dump
    http://ferrari.eti.br/correios/webservice/?q=PB151832535BR&f=serial
    http://ferrari.eti.br/correios/webservice/?q=PB151832535BR&f=xml

    e claro, para quem usa Ajax:
    http://ferrari.eti.br/correios/webservice/?q=PB151832535BR&callback=minhaFuncJs

    Disponibilizei tanto a classe quanto o código do webservice (que tem suporte a caching!) “de grátis” e com licença BSD no github:

    http://github.com/caferrari/correios/

    *UPDATE* Adicionado um gerador de RSS, assim é possível usar o próprio agregador para fazer o tracking!

    http://ferrari.eti.br/correios/rss/?PB151832535BR

    Até a próxima.

    Fonte: Blog Carlos André Ferrari



      5 Comentários

      Natascha
      3

      Se for utilizar a própria janelinha dos Correios (e ñ a interface de seu site), ñ precisa tudo isso.

      Basta copiar a URL da pop-up que é aberta quando você rastreia mercadoria no site dos Correios e depois adicioná-la ao seu site de e-commerce adicionando ao final o parâmetro correspondente ao seu nº de rastreamento.
      Uso há vários anos dessa forma no site da empresa em que trabalho e funciona belezinha.

      http://websro.correios.com.br/sro_bin/txect01$.QueryList?P_LINGUA=001&P_TIPO=001&P_COD_UNI=SEU Nº DE RASTREAMENTO AQUI!

      MAICON
      4

      interessante pois pode-se fazer um sistema automatico de status do pedido e enviar email por exemplo para o cliente quando o status é alterado.

      Mael
      5

      Olá, gostaria de saber como faço para limitar o acesso da classe à pagina dos correios por uma porta somente, pois no log de acesso, sempre quando faço o rastreamento, ele nunca acessa a mesma porta. Preciso disso, pois o firewall bloqueia todas as portas e o administrador da rede vai liberando conforme a necessidade do usuário.

      Deixe seu comentário

      Seu endereço de e-mail não será publicado. Campos com * são obrigatórios!

      *

      *

      Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>