Definitivamente lo que hoy les presento no es la automatización de Chrome y esto es por una sencilla razón…Chrome no admite automatización a través de VFP como si es posible con IExplorer. A lo más que podemos aspirar es ejecutar (lanzar) el navegador con la URL deseada y/o mostrarla en un formulario de VFP.
Pero partiendo de información
capturada, validada y generada en VFP, y con el apoyo de otras herramientas, es
posible ejecutar el navegador, llenar cajas de textos, seleccionar opciones de
combos, clickear botones, en fin, interactuar con los elementos de las páginas web. Pero bueno de una u otra forma automatizaremos!!.
La herramienta a la que me refiero es Selenium WebDriver. Pero requiere de otras aplicaciones. En mi caso elegí Java para desarrollarla.
¿Qué es Selenium? Es una herramienta de testeo. https://www.selenium.dev/
Una breve descripción del proceso que yo desarrollé:
Se crea el código en java (y el ejecutable) incluyendo las librerías de Selenium y del navegador a utilizar (y las otras requeridas dependiendo de las funciones usadas), se ejecuta Chrome desde VFP pasándole parámetros de usuario y contraseña (en su caso), desde VFP genero un archivo de texto conteniendo por línea los datos a introducir en las cajas de texto. Desde el ejecutable de Java creado se extraen la información de las líneas del archivo de texto y se llenan las cajas de texto.
¿Qué se requiere?
- Ganas de hacerlo
- Kit de desarrollo de Java (jdk-14.0.1_windows-x64_bin.exe para el caso de W64)
- Eclipse (eclipse-inst-win64.exe para el caso de W64)
- Librerías Selenium para Java. No JavaScript (selenium-java-3.141.59.zip )
- Driver del navegador elegido (son ejecutables)
- Tener instalado Java JRE (requerido para ejecutar aplicaciones de Java y que por lo general los pc ya tienen instalado)
Varios lenguajes de programación son compatibles con Selenium Webdriver: Java, .Net, PHP, Python, Perl, Ruby.
Y permite interactuar con diferentes navegadores: Firefox, Internet Explorer, Safari, Opera, Chrome, Edge.
Existe bastante información y tutoriales en la red. Les dejo algunos links de referencia:
Tutoriales:
https://www.tutorialselenium.com/
https://www.tutorialselenium.com/2017/10/20/configurar-eclipse-con-selenium-webdriver/
https://www.youtube.com/watch?v=bOd2i1yPVb4
http://puntocomnoesunlenguaje.blogspot.com/2012/08/el-argumento-args-de-main-en-java.html
https://www.qalovers.com/2019/09/trucos-selenium.html
Java JDK:
https://www.oracle.com/index.html (ver parte inferior Java SE14 download)
Eclipse:
Librerías Selenium Java y Driver de navegadores (Ver “+Browser” en parte inferior):
https://www.selenium.dev/downloads/
Por favor tomen en cuenta que algunos tutoriales son de años pasados y podrían no coincidir en las versiones que mencionan y situación actual. La sugerencia es usar las versiones recientes.
************************
Para los expertos, o con algún
conocimiento, de Java esto resultará “pan comido”.(O bien pudieran elegir otro lenguaje)
Mi intención es aportar algo a aquellos que, como yo, sólo manejamos VFP.
Con la lógica de programación que ya dominamos en VFP tenemos un tramo ganado.
Si bien igual en un aliciente a iniciarse en otras herramientas diferentes de nuestro apreciado zorro.
Les dejo un archivo con un sencillo ejemplo de java que abre una página en Chrome y consulta el valor del dólar de una fecha pasada como parámetro.
Pueden ejecutarlo desde la ventana del DOS (CMD) o desde VFP con el comando RUN
Ejecutar así:
vfp-chrome.jar 05/02/2020&&ejecutable y fecha a consultar en dd/mm/aaaa
Anexo ejecutable, driver de Chrome y el código en Java. Renombrar.
Deben estar en el mismo directorio
chromedriver.dat=chromedriver.exe
vfp-chrome.dat=vfp-chrome.jar
Link de descarga:
https://drive.google.com/file/d/1TlCHE3at6BIK1CPoqvHvDgREcqmF_ea4/view?usp=sharing
https://drive.google.com/file/d/1KaPbVksFeHMPI8VTVBrJFHZysBzjSI7i/view?usp=sharing
https://drive.google.com/file/d/1rVGSHtw5Zx26AMBAfXrQtKveTZ97BT-b/view?usp=sharing
En resumen, sin desanimarlos, es necesario crear un ejecutable en otro lenguaje que "procese" la información de nuestras aplicaciones en VFP.
zarlu
Chetumal, Quintana Roo, México
--
Visita el Blog de la Comunidad Visual FoxPro en Español: http://comunidadvfp.blogspot.com
---
Has recibido este mensaje porque estás suscrito al grupo "Comunidad de Visual Foxpro en Español" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a publicesvfoxp...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/publicesvfoxpro/6351aa0a-7429-44ee-8966-201281eecfeao%40googlegroups.com.
--
Visita el Blog de la Comunidad Visual FoxPro en Español: http://comunidadvfp.blogspot.com
---
Has recibido este mensaje porque estás suscrito al grupo "Comunidad de Visual Foxpro en Español" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a publicesvfoxp...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/publicesvfoxpro/b646070b-ed13-440a-8777-4546e42a0899o%40googlegroups.com.
--
Visita el Blog de la Comunidad Visual FoxPro en Español: http://comunidadvfp.blogspot.com
---
Has recibido este mensaje porque estás suscrito al grupo "Comunidad de Visual Foxpro en Español" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a publicesvfoxp...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/publicesvfoxpro/2c01cb3d-c497-437e-8a64-89b0dfa01fdao%40googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/publicesvfoxpro/CAFiS3qXx1oJyjWfE7w5w0wXMctdiTDCDD0u%3DwGd8pmTUYyOj5g%40mail.gmail.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/publicesvfoxpro/CAMkTt8ouOuqZouOz-%3DyetYxD4CB0NmigC%2BdDPiguXSL7J7vn8A%40mail.gmail.com.
--
Visita el Blog de la Comunidad Visual FoxPro en Español: http://comunidadvfp.blogspot.com
---
Has recibido este mensaje porque estás suscrito al grupo "Comunidad de Visual Foxpro en Español" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a publicesvfoxp...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/publicesvfoxpro/16b39334-ce85-49cb-8025-e8d2485cc4c4o%40googlegroups.com.
--
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/publicesvfoxpro/CAFiS3qXbo_6tqCNRq8wnOKvKiAqwG0dqqZFA4_r%3DmhuizrWZnw%40mail.gmail.com.