Estoy intentando cojer unos links y unas imagenes tal que queden así ordenado el array:
Dirección URL
Enlace de imagen
Dirección URL
Enlace de imagen
Así hasta que recorra el bucle y los encuentre todos.
Problemas:
No consigo que al recorrer el bucle los ponga ordenados y tampoco consigo que la expresión regular recoja el enlace de la imagen acuerdo a regex, los consigo todos pero todos los de la página.
Recojo los enlaces de las imagenes con $Explorador->find_all_images() del módulo WWW:Mechanize.
El tipo de html que esta especificado en el DOM de la página es este:
Código
<table border="0" cellpadding="0" cellspacing="0" bgcolor="#ffffff"> <tr> <td> <a href="http://valeptr.com/scripts/runner.php?PA=4749" target="_ptc" onclick="javascript:reloadpage(11)"> <img src="http://valeptr.com/scripts/runner.php?REDIRECT=http%3A%2F%2Fwww.e-qoo2.net%2Fimages%2Fbanner2.gif&hash=fc93bac327d1672abbe159e0a1fc17cd" alt="e-qoo2" border="0"> </a> </td> </tr> </table>
Y no consigo poner el link y la imagen que tiene debajo como he puesto arriba marcado en negrita.
Pongo todo el script en perl.
Código
#!/usr/bin/perl #<table border="0" cellpadding="0" cellspacing="0" bgcolor="#ffffff"> # <tr> # # <td> # <a href="http://valeptr.com/scripts/runner.php?PA=4749" target="_ptc" onclick="javascript:reloadpage(11)"> # <img src="http://valeptr.com/scripts/runner.php?REDIRECT=http%3A%2F%2Fwww.e-qoo2.net%2Fimages%2Fbanner2.gif&hash=fc93bac327d1672abbe159e0a1fc17cd" alt="e-qoo2" border="0"> # </a> # </td> # </tr> # </table> use WWW::Mechanize; use WWW::Mechanize::Sleepy; my $Explorador = WWW::Mechanize::Sleepy->new( agent => 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030624', sleep => '1' ); my @Array_PTC; $Explorador->get("file:/home/alejandro/Escritorio/1appsearch.php.html") #Proceed to access the URL to find all the links in emails #print $Explorador->content(); foreach my $link ( $Explorador->links, $Explorador->find_all_images() ) { if ( my ($interesting) = $link->url =~ qr{scripts/runner\.php\?PA=}) { push @Array_PTC, $link->url; } if ( my ($interesting) = $Explorador->find_all_images()=~ #Aqui expresión regular) { push @Array_PTC, $link->url; } }
Resumiendo: Consigo todos los enlaces que cumplen con el pattern scripts/runner\.php\?PA=
pero lo que consigo es:
1.- Conseguir todos los enlaces de debajo de el enlace <img src=" ... "
2.- Ordenar los enlaces para que queden link y debajo el enlace
Saludos,