Perl en Español

  1. Home
  2. Tutoriales
  3. Foro
  4. Artículos
  5. Donativos
  6. Publicidad
 
Índice general » Mundo Perl » Básico » Extracción de URL desde una página ASP y JSON  RESUELTO Responder al tema
Nuevo tema


Página 2 de 2  [ 22 mensajes ]  Ir a página Anterior  1, 2
 
Nota 2011-12-25 07:36 @358
Avatar de Usuario
Administrador
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España
Mensajes: 10250
Re: Extracción de URL desde una página ASP y JSON
Pues ya lo tienes: le mandas la orden de cambiar la imagen, y a continuación preguntas el valor de la propiedad 'src' del <img> que almacena la imagen en pantalla.

Aunque... lo ideal sería averiguar la fórmula que usa para generar esos enlaces, analizando la subrutina de carga, y descargando entonces directamente las imágenes.

Recuerda también que si vas a hacer descargas masivas, debes avisar al propietario de la web y pedirle permiso.

_________________
JF^D Perl programming


Nota 2011-12-25 17:40 @777

Perlero Nuevo
Registrado: 2011-12-17 09:22 @432
Mensajes: 12
Re: Extracción de URL desde una página ASP y JSON
Pues entonces solo me queda desarrollar el código para esto y terminaría, pero sería interesante
saber lo segundo, ahora bien, ¿es posible hacerlo desde el lado del cliente?

Lo digo porque la página es en su mayoría dinámica (lo digo por observación de su comportamiento),
los enlaces y algunos <div> son generados con ASP y creería que lo que dices está totalmente oculto al cliente...

Al fin y al cabo no me interesan tanto las imágenes; lo hago porque desde que empecé
con Perl nunca nada me había llevado tanto tiempo y neuronas (cerca de un mes analizando
enlaces, descargando una y otra vez su index; incluso monté un servidor local para ver los
html en acción localmente) y pues me encantaría descubrir lo que se encuentra detrás del telón,
si es posible del lado del cliente, desde Windows.

Otra cosa a tener en cuenta es... no tengo ni la más remota idea de ASP... Solo lo que he
podido ver con este pequeño proyecto...

Gracias por todo y pues voy a añadir a la rutina lo último que dices, uno todos los pedacitos y
lo pruebo a ver qué tal va...


Nota 2011-12-26 08:09 @381
Avatar de Usuario
Administrador
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España
Mensajes: 10250
Re: Extracción de URL desde una página ASP y JSON
Cuando me refiero a averiguar cómo hace la carga de la foto, me refiero a estudiar qué hace la subrutina de JavaScript CambiarFoto().

Dices que la página se genera con ASP, pero no tienes acceso al servidor (porque si no, tendrías acceso directo a las imágenes y no existiría el problema iniciado en este hilo).

Entonces... poco nos interesa saber el lenguaje que crea la página, si no tenemos acceso a él. Solo podemos ver lo que recibimos: los códigos HTML y JavaScript que llegan a nuestro navegador.

Si la página se genera de forma dinámica, será por acción del código JavaScript de la página, que usará procedimientos para generar nuevo código, mover objetos por la página, y pedir más información al servidor.

Entre ellas estará la subrutina CambiarFoto(). Ella sabrá de dónde y cómo tiene que hacer para presentar una nueva imagen. Si está escrito de forma más o menos clara, y sabemos algo de JavaScript, podemos llegar a saber qué es lo que hace. Si no, no pasa nada: le pedimos a Firefox que la ejecute por nosotros, como hemos visto antes, y luego le pedimos la información que ha generado.

_________________
JF^D Perl programming


Nota 2011-12-26 23:10 @007

Perlero Nuevo
Registrado: 2011-12-17 09:22 @432
Mensajes: 12
Re: Extracción de URL desde una página ASP y JSON
¡Ah, Ok! Perdon, es que no lo capté así.

Bien, pues cargo la página, cargan los iconos, estilos a los menús y texto.
Después de estar completa la carga del código HTML, el servidor manda
un post a otra página ASP local http://www.sevidor/ws/wsGal.asmx/getLstGalerias
y el resultado del post es una lista tipo Id:url que se despliega en un div reemplazando
el id por la URL real.

Discúlpenme si estoy diciendo cosas repetidas pero es que de tanto trabajar en esto ya ni sé.
Por cierto, no sé si lo anterior tiene lógica ya que lo digo por lo que he observado con
Firebug; no tengo ni idea de JavaScript, solo HTML básico y Perl.

Gracias por la ayuda y paciencia.


Nota 2012-01-01 18:54 @829

Perlero Nuevo
Registrado: 2011-12-17 09:22 @432
Mensajes: 12
Re: Extracción de URL desde una página ASP y JSON
Muchísimas gracias por todos los consejos y ayudas...

Ya logré que mostrará el resultado que yo esperaba, tuve que quitarle el escáner
de enlaces que me diste por uno con expresiones regulares; hice un híbrido con el
que ya tenía de get y este último de telnet ya me muestra los resultados esperados
(en total 250 lineas de código).

Pongo la parte que daba problemas...


Syntax: [ Download ] [ Hide ]
Using perl Syntax Highlighting
  1. for my $camb ( 0 .. $contador - 1 ) {
  2.     my $cambiarfoto = comando("JavaScript&#058;Gal_cambFot($camb)");
  3.     my $html        = comando('document.body.innerHTML');
  4.     my ($carga)     = ($html);
  5.  
  6.     my ($enlaces_img) = ( $carga =~ /<img src="http:\/\/www.servidor.com\/images\/(.*?)"/is );
  7.  
  8.     print "http://www.servidor.com/images/$enlaces_img\n";
  9.  
  10.  


Muchísimas gracias por todo... :roll:


Nota 2012-01-02 06:52 @327
Avatar de Usuario
Administrador
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España
Mensajes: 10250
Re: Extracción de URL desde una página ASP y JSON  RESUELTO
En el código que muestras, solo veo que saques una imagen, así que
se podría simplificar aún más. Incluso podrías pedirle a Firefox que
te dé ese enlace, si supiéramos determinar la posición o el nombre
de ella.

Por ejemplo, si supiéramos el índice de imagen dentro de la página,
se podría hacer un comando('document.images[$i].src'); para
obtener la dirección.

Por otra parte, el código que muestras tiene algunas cosillas redundantes
(más bien, cosméticas).

Puede quedar así:
Syntax: [ Download ] [ Hide ]
Using perl Syntax Highlighting
  1. for my $camb ( 0 .. $contador - 1 ) {
  2.     my $cambiarfoto = comando("javascript&#058;Gal_cambFot($camb)");
  3.     my $html        = comando('document.body.innerHTML');
  4.  
  5.     my ($enlaces_img) = $html =~ m{<img src="(http://www[.]servidor[.]com/images/.+?)"/is;
  6.  
  7.     print "$enlaces_img\n";

P.D. Lo que se ve como & #058; en realidad es el carácter ':'. Pasa que el software de visualización de código convierte la secuencia 'javascript' junto con un ':', a eso que vemos. (Motivos de seguridad.)

_________________
JF^D Perl programming


Nota 2012-01-02 09:18 @429

Perlero Nuevo
Registrado: 2011-12-17 09:22 @432
Mensajes: 12
Re: Extracción de URL desde una página ASP y JSON
¡Je,je,je! Como dirían los creadores de Perl, "There's more than one way to do it".

Punto a favor de Perl sobre JavaScript. Voy a probar tu solución y si
es más eficaz que la mía la implemento. Y una duda...
¿Por qué dices que se ve cosmético? ¡je,je,je!

Gracias por la paciencia...


Responder al tema  [ 22 mensajes ]  Ir a página Anterior  1, 2

Reglas del Foro
No puedes abrir nuevos temas en este Foro
No puedes responder a temas en este Foro
No puedes editar tus mensajes en este Foro
No puedes borrar tus mensajes en este Foro
No puedes enviar adjuntos en este Foro

Publicidad

Socializa

Síguenos por Twitter

Suscríbete GRATUITAMENTE al Boletín de Perl en Español

Saltar a:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Traducción al español por Huan Manwë para phpbb-es.com
phpBB SEO