Soy muy nueva en Perl y estoy intentando replicar un script que haga lo siguiente:
- Descarga de una URL un archivo en formato Excel
- El contenido de este fichero lo mete en una base de datos MySQL.
De momento el problema que tengo es la descarga del archivo. Me da siempre error.
Este script se ejecutará una vez a la semana, bajará el archivo de la URL, cuyo nombre es dinámico.
Para definir el nombre del archivo juego con fechas, lo cual en principio está funcionando bien.
Así pues defino primero el nombre que tendrá el archivo y después intento descargarlo.
Este archivo, con ese nombre, sí existe en la URL, así que no sé qué estoy haciendo mal.
Este es el código en la primera parte del modelo (sin incluir aún la db):
Using perl Syntax Highlighting
- #!/usr/bin/perl -w
- use DBI;
- use LWP::Simple;
- use Date::Business;
- # $dbh = aquí pondré mis datos de db pero por el momento los quito;
- # current date
- my $date = new Date::Business();
- $today=$date->image();
- # current date
- my $date2 = new Date::Business();
- # last date of the report
- $date2=$today-4;
- $todate=$date2;
- $toyear = substr($todate,0,4);
- $tomonth = substr($todate,4,2);
- $totoday = substr($todate,6,2);
- # current date
- my $date3 = new Date::Business();
- # first date of the report
- $date3=$today-11;
- $fromdate=$date3;
- $fromyear = substr($fromdate,0,4);
- $frommonth = substr($fromdate,4,2);
- $fromday = substr($fromdate,6,2);
- my $qa = get("https://[aquí la url]/RawDataDump_$fromyear$frommonth$fromday-$toyear$tomonth$totoday.xls")
- or die "Couldn't fetch the QA RAW DATA.";
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4
Como veis la URL comienza por https, aunque eso en teoría no debería ser problema. Como digo, el nombre del fichero lo genera bien (en mis pruebas imprimo por pantalla el nombre, que en este caso sería: RawDataDump_20121118-20121125.xls y lo hace bien.
Cualquier ayuda o consejo será muy bienvenida.
¡Muchas gracias!
Cleo