Perl vs. CaixaGalicia:PDF

15-05-2007

Fai uns cantos meses activei o servizo de correspondencia electrónica que ofrece CaixaGalicia. Non tanto por salvar árbres, se non porque non sabía que facer con tantas notificacións, e tiña medo de perdelas. Ainda que normalmente non valen para moito, cando discutes con Facenda si que chas piden, ou se pasou algo raro ca conta sempre estan ben para aclarar o problema.

O resultado que é que agora en vez de papeliños teño uns cantos PDFs. O problema de organizalos e que a oficina web de CaixaGalicia non lle pon nomes diferentes (outros bancos si que o fan). Así que o resultado é que acabo tendo unha chea de ficheiros chamados "consultacorrespondencia_fichero.asp". O cal non me di nada (por non ter, nen teñen a extensión correcta). Mirando dentro do PDF logrei descubrir que vai a data de creación do PDF (que é o día no que se emite o documento). Pareceume moi bóa idea a de usar este número. Así vexo as antiguedades do ficheiro, ademáis que a data coincide do mes a que corresponde o documento...

Desempolvei de novo o Perl e fixen un programiña para que lle poña o nome de "data-CaixaGalicia.pdf" a estes ficheiros baixados. Coma paso moito tempo ata que volto a usar o Perl, esquezo todo o que aprendín, e boto unha chea de tempo para facer unha chorradiña coma esta. Que poño na Web por se a algún lle interesa:

#!/usr/bin/perl -w
use warnings;
use Cwd;
# renomea PDFs baixados de Caixagalicia ca data de creación
if (!@ARGV) {die "Uso: ".$0." [ficheiros PDF de CaixaGalicia]\n"}
chomp @ARGV;
foreach $ficheiro (@ARGV) 
{
  # para cada ficheiro buscamos CreationDate (D:AAAAMMDDHHMMSS)
  # e o gardamos nunha variable
  open (Ficheiro, "<", $ficheiro) or next;
   
      while (<Ficheiro>)
       {
           if (m/CreationDate \(D:(\d{14})\)/o)
             { 
                $data = $1;
                last;
             }
       }
   
  close Ficheiro;
  
  next if ($data eq "");  
  
  $novo = "$data-CaixaGalicia.pdf";
  # Coma se repiten a data e o tempo para moitos ficheiros
  # comprobamos que xa non exista e se existe
  # incrementamos en 1 os segundos (así xa é un ficheiro diferente)  
  while(-e $novo)
      {
          $data=$data + 1;
          $novo = "$data-CaixaGalicia.pdf";
          next; 
      } 
  
  print "renomeamos $ficheiro en $novo \n";
  rename ( $ficheiro, $novo );  

}

Logo despois de esto (ou incluso sen lle poñer nengún nome) sempre se lle pode poñer orde ós ficheiros... Por exemplo meter os PDFs no iTunes (¡Si! Usar o iTunes para organizar os teus documentos). Se non chista moito a idea (en realidade non ten apenas nengunha avantaxe usar o iTunes, case consegues o mesmo co xestor de ficheiros e uns subdirectorios), para o Windows hai un programa gratuito para ordenar e almacenar os documentos importantes: DocsVault.

Para o Mac, podes organizar os documentos co espectacular Yep, pero non é gratuito. A non ser que instales a versión 1.1 de Yep que ainda é gratis. Eu o estou a probar, é esta moi chulo. É coma o iPhoto pero para PDFs.

O Yep e as miñas facturas: todo moi chulo
O Yep e as miñas facturas: todo moi chulo


feed de comentarios - top


·La Rabadilla· ·Laconada· ·iRamos· ·O Vello Corvo· ·Palabros·
counter [CSS 2 Valid!] [XHTML 1.0 Valid!] [Made with Ant] [Get Firefox] RSS 1.0RSS 1.0 Atom 1.0RSS 1.0