• Publicidad

Consulta sobre URL

¿Ya sabes lo que es una referencia? Has progresado, el nível básico es cosa del pasado y ahora estás listo para el siguiente nivel.

Notapor explorer » 2008-04-15 10:12 @467

Claro, tienes puesto el '</html>' y el close() dentro del bucle...
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14486
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Publicidad

Notapor situ » 2008-04-15 11:11 @508

Muchísimas Gracias
situ
Perlero nuevo
Perlero nuevo
 
Mensajes: 358
Registrado: 2007-04-09 01:44 @114

Ahora una salida PDF

Notapor situ » 2008-04-20 12:39 @568

Estoy tratando de guardar la salida en un archivo PDF, ya que gracias a ustedes pude hacerlo en formato HTML.
Tengo un problema: solamente me guarda el último resultado:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
#!/usr/bin/perl

use warnings;
use strict;
use HTTP::Request;
use LWP::UserAgent;

my $host = 'http://localhost';
my $string = "marcos";

#Lista de paginas en un array, así es fácil agregar más páginas
my @paginas = ("legajo.php","legajos.php");

#Abrimos el archivo con la lista de archivos a leer
open my $FILE, '<', 'lista_de_archivos.txt' or die $!;
my @archivos = <$FILE>;
close $FILE;


#Creamos nuestro objeto LWP
my $ua = LWP::UserAgent->new();
$ua->timeout(30);

#Iteramos en cada archivo
for my $archivo(@archivos){
    chomp $archivo;

    #Iteramos en cada pagina
    for my $pagina(@paginas){

        #Armamos el url
        my $url = join "/", $host, $pagina, $archivo;

        #Creamos un nuevo request
        my $req = HTTP::Request->new(GET=>$url);

        my $response = $ua->request($req);

        if ($response->is_success) {
            if( $response->content =~ /$string/ ) {
 #Cerramos el reporte
my $pdf = new PDF::Report(
                          PageSize => 'A4',
                          PageOrientation => 'Portrait'
);


$pdf->newpage(1);
$pdf->setFont('Helvetica-bold');
$pdf->setSize(14);
my ($width, $height) = $pdf->getPageDimensions();

$pdf->centerString(0, $width, $height-40, "Reporte");
$pdf->setFont('Helvetica');
$pdf->setSize(10);

$text2="Host: $host";
$text3="Archivo: lista_de_archivos.txt";
$text4="String: $string";
$text5="Reporte: reporte.pdf";
$text6="$url\n";

$pdf->addParagraph($text1, 30, $height-70, $width-60, 30, 25, 10);
$pdf->addParagraph($text2, 30, $height-80, $width-60);
$pdf->addParagraph($text3, 30, $height-90, $width-60);
$pdf->addParagraph($text4, 30, $height-100, $width-60);
$pdf->addParagraph($text5, 30, $height-110, $width-60);
$pdf->addParagraph($text6, 30, $height-120, $width-70);
open(PDF, "> reporte.pdf") or die "ERROR: No puedo escribir en reporte.pdf: $!\n";
print PDF $pdf->Finish();

            }
        }

    }
}
close(PDF);

exit;
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4


Si alguno me puede ayudar se lo voy agradecer :D
Última edición por situ el 2008-04-20 15:12 @675, editado 1 vez en total
situ
Perlero nuevo
Perlero nuevo
 
Mensajes: 358
Registrado: 2007-04-09 01:44 @114

Notapor explorer » 2008-04-20 13:48 @617

Porque $reporte siempre vale lo mismo... de hecho, el 'strict' te dirá que esa variable no ha sido inicializada...
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14486
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor situ » 2008-04-20 15:13 @675

Ahí lo arreglé. Le puse reporte.pdf directamente, pero ¿cómo puedo hacer para que me guarde todos los resultados y no solamente el último?
situ
Perlero nuevo
Perlero nuevo
 
Mensajes: 358
Registrado: 2007-04-09 01:44 @114

Notapor explorer » 2008-04-20 17:41 @778

Pues... cambiando el valor de la variable, cada vez... con un índice que se va incrementando, por ejemplo ($i++; $reporte = "informe_$i.pdf";) o en función del nombre del fichero de entrada ($reporte = "informe_${pagina}_$archivo.pdf").
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14486
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Anterior

Volver a Intermedio

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados