[caracas-pm] Leer resultados AJAX desde Mech

Alejandro Imass ait at p2ee.org
Thu Aug 15 15:09:04 PDT 2013


2013/8/15 Alberto Mijares <amijaresp at gmail.com>:

[...]

> Creo que lo mejor es usar $mech->synchronize.
>
> Cuando una página se ha cargado completamente en FF, se genera
> internamente un evento tipo DOMContentLoaded.
>
> Para probar, lo que hice fue
>
> $mech->synchronize('DOMContentLoaded', sub {print $mech->content;});
>
> y puedo ver el HTML actualizado. Ya eso es garantía de que puedo
> apoyarme en ese método cuando necesite actualizar el HTML para hacer
> otra cosa.
>

Buen dato. Yo no lo he usado pero lo tomaré en cuenta para desarrollos futuros.

Osea que en efecto es parecido al wait.until de Selenium Firefox Web
Driver, aunque éste último es bien flexible. Pero claro, Selenium es
un producto comercial con buen funding y no es de extrañar que su API
sea mucho más rico en funcionalidad que de una forma u otra es
implementable con Mech::Firefox.

De todas, todas lo que le falta a Mech::Firefox (y MozRepl que está
detrás) lo compensa con creces la productividad de Perl y por eso
nosotros igual seguimos prefiriendo a Mech::Firefox/MozRepl sobre
cualquier otra cosa.

Ahora bien, ninguna de las dos son para nada ideales. Idealmente,
Gecko o WebKit deberían correr como librerías que uno pudiese
automatizar de una manera mucho más robusta que estar usando dos
componentes loosley-coupled como Selenium o MozRepl. Hay algunas
iniciativas en este sentido pero nada concreto, al menos no hasta
donde yo pude investigar en 2012.


Saludos,

-- 
Alejandro Imass


More information about the caracas-pm mailing list