Página 1 de 1

Ejecutar sitio a través de CGI

NotaPublicado: 2012-06-07 14:59 @666
por Emstro
Hola,

¿Me pueden aconsejar?

Necesito ejecutar un botón el cual exporta a Excel el contenido de una grilla. Todo esto a través de un .pl

Creo que con LWP se puede pero no puedo simular o activar el botón.

De antemano, gracias.

Re: Ejecutar sitio a través de CGI

NotaPublicado: 2012-06-07 17:30 @771
por explorer
¡Huy, qué lío!

A ver... CGI, Excel, LWP... y mandar ejecutar a un pobre botón... pobrecillo.

Por lo que he podido entender, quieres que, al apretar un botón en una página HTML, se ejecute un cgi, que convierta una matriz (que no sabemos en qué formato está), a un archivo en formato Excel...

O quizás, quieres pulsar un botón (quizás en Tk o Gtk2) en un programa Perl, que se conecte con LWP a una página web, extraiga una tabla, y esos datos convertirlos a Excel.

O quizás...

Re: Ejecutar sitio a través de CGI

NotaPublicado: 2012-06-08 16:50 @743
por Emstro
Hola, explorer,

Me explico:

Existe una página HTML que contiene una grilla (DHTMLX GRID) con datos.

Esta grilla posee un botón que exporta todo el contenido de ésta a Excel (lo hace a través de PHP).

Mi idea entonces es que a través de un Cron Job simular todo esto.

Tengo la URL que posee la grilla, pero necesito activar el botón de ésta y guardar el return en un directorio cualquiera.

¿Me entiendes ahora?

Gracias por todo.

Re: Ejecutar sitio a través de CGI

NotaPublicado: 2012-06-08 17:35 @774
por explorer
Si los datos están cargados junto con el código HTML, no necesitas pulsar ningún botón. Te vale con recuperar el código HTML. Con LWP::Simple es fácil.

Si los datos bajan, de forma dinámica, una vez cargada la página, habría que estudiar el tráfico que hace la hoja para descubrir la petición que se hace desde tu navegador hacia el servidor. Una vez que lo sepamos, pues lo mismo de antes, ya se puede bajar de forma directa con LWP::Simple. Los datos una vez bajados, quizás estén en formato XML o JSON, así que habrá que usar algún módulo para leerlos.

Si son datos que se generan en base a unos cálculos, pues a lo mejor no queda más remedio que pulsar el botón que dices. En unos casos, con WWW::Mechanize se podría resolver, pero lo normal es que haya código JavaScript por detrás. Con WWW::Mechanize::Plugin::JavaScript se podría intentar...

Como último recurso, podríamos manejar el Firefox a distancia usando el WWW::Mechanize::Firefox, y así es como si realmente un humano estuviera usando la página.

Re: Ejecutar sitio a través de CGI

NotaPublicado: 2012-06-11 10:49 @492
por Emstro
Gracias, explorer,

Yo tengo algo idéntico a esto (Export to Excel) http://dhtmlx.com/docs/products/dhtmlxGrid/index.shtml

Hay un botón (icono de Excel) que es el activa unas bibliotecas (PHP) las cuales generan el Excel para poder bajarlo.

¿Qué me aconsejas tú, entonces?

Gracias, amigo.

Re: Ejecutar sitio a través de CGI

NotaPublicado: 2012-06-11 16:21 @723
por explorer
Ponte en contacto con los dueños de la web y les cuentas lo que quieres hacer, que quieres obtener el Excel de los datos, y que necesitas saber el URL o saber qué JavaScript debes ejecutar para arrancar el proceso de descarga del libro Excel.