Práctica: Analisis de URLs en el Programa de Descarga

Mejore el tratamiento de los URL en el programa de descarga de paginas HTML desarrollado en la práctica 3.11 y presentado en la sección 3.10. Codifique en URL el descriptor usado como parámetro. Convierta las direcciones relativas en absolutas y descargue aquellas que se corresponden con ficheros HTML. Asegúrese que la misma página no es descargada múltiples veces.

La función head de LWP::Simple permite obtener las cabeceras HTTP de un fichero sin tener que descargarlo. El siguiente ejemplo muestra un uso:

casiano@beowulf:/tmp/Net-Server-0.96/examples$ perl -MLWP::Simple -dwe 0
  DB<1> ($type, $length, $mod) = head('http://nereida.deioc.ull.es/~pp2/perlexamples/node39.html')
  DB<2> x ($type, $length, $mod)
0  'text/html; charset=iso-8859-1'          # tipo MIME
1  19796                                    # tamaño en bytes
2  1175942205                               # fecha de modificacion en MUT
  DB<4> p scalar(localtime($mod))
Sat Apr  7 11:36:45 2007

Extienda el guión para que admita un parámetro que limite el tamaño de los ficheros que serán descargados. Algunos servidores no devuelven la información sobre el tamaño. Considere tal posibilidad.

Casiano Rodríguez León
2012-02-29