Haciendo pruebas sobre Splinter



Documentos relacionados
MINI MANUAL PARA CREAR FORMULARIOS CON PHP Marzo 2007

CAJA NOTARIAL Requisitos: NO HAGA FOTOCOPIAS

CONSIDERACIONES GENERALES DEL FUNCIONAMIENTO DEL PROGRAMA

Tutorial de herramientas de Google

Programa diseñado y creado por Art-Tronic Promotora Audiovisual, S.L.

Curso de PHP con MySQL Gratis

Acá vamos a ocuparnos de cómo realizar la instalación de una red intra-aula sobre Linux, concretamente en la distribución de GNU/Linux Ubuntu 9.04.

Ayuda para la instalación Componente Firma Digital INDICE. 1 Configuración previa Configuración Internet Explorer para ActiveX...

GUIA DE BLOQUEO Y DESBLOQUEO WEB

CURSO INSTALACION E IMPLEMENTACION ALOJA SOFTWARE HOTEL MODULO 04: Reservas- Planning- Cuentas del Hotel [1]

PREPARANDO EL ENTORNO DE DESARROLLO PARA PROGRAMAR EN PHP. DESCARGAR E INSTALAR NOTEPAD++ (CU00808B)

Guía de uso del sistema CV-Online

Manual del panel. Core-Admin

Un Navegador es un programa que nos conecta a Internet y nos permite organizar nuestro

Ejercicio 3 Diapositivas Interactivas.

Manual de INTRANET. Introducción Objetivo de este Manual Convenciones y estándares a utilizar Convenciones de formato de texto...

Para descargar la versión más reciente de Skype accedemos al sitio web de Skype y luego hacemos clic en Descargar Skype para escritorio de Windows.

INSTALACIÓN Y REGISTRO

COMPROBACIONES BÁSICAS PARA EL USO DE FIRMA EN EL RTC

02 Búsqueda, selección y evaluación de proveedores

Instalación y Registro Versiones Educativas 2013

Edición de Ofertas Excel Manual de Usuario

Personal Broker v.4.0.5

Manual de usuario de IBAI BackupRemoto

Mi correo con OUTLOOK

Manual para usuarios USO DE ONEDRIVE. Universidad Central del Este

CONCEPTO DE SCREENCAST O MATIC

Ilustre Colegio Oficial de Médicos de Zamora. Correo Corporativo. Manual de Usuario

CONFEDERACIÓN DE EMPRESARIOS DE MÁLAGA

Un pequeñísimo tutorial para explicar cómo darse de alta al MEJOR SISTEMA de compartición, backup... en la web.

En términos generales, un foro es un espacio de debate donde pueden expresarse ideas o comentarios sobre uno o varios temas.

Guía de Instalación / Activación Admin CFDI Versión 4.5

MANUAL DE USUARIO SISTEMA DE ADMINISTRACION ESCOLAR (SAE)

Instalación de Fedora Core 18 junto a Windows 7.

Copias de Seguridad con SQL Server Realizar una copia de seguridad de Bases de Datos

WEB HOSTING IPLAN INSTALACIÓN DE APLICACIONES PARA FTP

Instalación de ActivePerl en MS Windows

Manual para la utilización de PrestaShop

Citrix Access Essentials 2.0

Introducción al Programa ImageJ

Guia de realización de un GIG personal en nuestra página web (

Ahora comencemos!... Las operaciones matemáticas fundamentales pueden realizarse de forma rápida y sencilla con Miicrosofftt Excell.

Manual de operación Tausend Monitor

INSTALACIÓN DE SERVIDOR DE CORREO ELECTRÓNICO

MANUAL PARA EL AGENTE DOCUMENTO EXTERNO

INDICE. 1.- Novedades de la versión Instrucciones de actualización a la versión Instrucciones de instalación de la versión 2.

Configuración de Internet Explorer para su uso con controles Activex

Servidor Apache. Instalación Configuración Apache con Webmin 24/03/2014. Vicente

MANUAL DEL PROGRAMA DE ASESORAMIENTO (Asesores) Navegador y limpiar caché/cookies...2 Acceso al programa de Asesoramiento... 7

MACROS. Automatizar tareas a través del uso de las macros.

INDICE. Página 2 de 23

HIPERVÍNCULOS. Es posible asignar un vínculo a un texto, a una imagen, o a parte de una imagen

Programando por primera vez

Mig ración masiva a Huayra

Manual de uso. Manual de uso - citanet 1

UNIVERSIDAD DE MEDELLÍN NUEVO PORTAL WEB MANUAL DE USUARIO GESTOR DE CONTENIDOS

Audio y vídeo en Ardora 7

Configuración de un APs D-Link DWL-2100AP.-

Manual de usuario de Parda Programa de Almacenamiento y Recuperación de Datos Automático

GENERACIÓN DE TRANSFERENCIAS

15 CORREO WEB CORREO WEB

Parámetros para descarga de videos y teleclases en la plataforma virtual UTB

MACROS Y FORMULARIOS

MDG-Carreras 2014 Cronómetro y Gestión de Carreras Deportivas. Índice. Instalación de los archivos... 3

Correo Electrónico: Webmail: Horde 3.1.1

Instructivo para realizar compras desde el sitio web

QUÉ REQUISITOS TÉCNICOS TIENE QUE TENER MI ORDENADOR PARA PODER VOTAR ELECTRÓNICAMENTE? MATRIZ DE COMPATIBILIDAD

INSTALACIÓN DE SIESTTA 2.0 EN UN HOSTING (Ejemplo para Guebs.com)

Trazabilidad ERP Microsa Gestión de Lotes

MANUAL DE AYUDA MODULO TALLAS Y COLORES

Departamento CERES Área de Tarjetas Inteligentes Manual de Usuario

Página 1 de 7. Qué es Scratch?

MANUAL PARA GESTIÓN DE INCIDENCIAS INFORMÁTICAS

OPERACIONES EN MOSTRADOR

Uso de Visual C++ Pre-Practica No. 3

MANUAL CAMBIO DE CLAVE WIFI

Manual De Intranet Docentes (versión 1.0)

Voy a intentar explicar por encima cómo funciona el Foro.

Documentación de usuario

MANUAL BASICO DE WEBEX

Web Publishing con LabVIEW (I)

CONFIGURACION AVANZADA DE MOZILLA THUNDERBIRD

Procedimiento de instalación de Aula Virtual Santillana en Windows: Alumnos

MANUAL DE ACCESO A TU CUENTA DE CLARO A TRAVES DE LA WEB

Relaciones entre Tablas en una Base de Datos Access

Indice I. INTRODUCCIÓN SEGURIDAD DE ACCESO REGISTRO DEL VALOR FLETE CONSULTAS V. GRÁFICAS. MANUAL GENERADORES DE CARGA RNDC Noviembre 2015 Versión 2

Manual de Usuario. AB-Mailing

MANUAL INSTALACIÓN ABOGADOS MF

Servicio de Informática Vicerrectorado de Tecnologías de la Información y la Comunicación

G R U P O S INDICE Cómo crear una cuenta en ARQA? Cómo tener un grupo en ARQA? Secciones y funcionalidades de los grupos Configuración del grupo

Diplomado en. Servicio Nacional. De Facilitadores Judiciales

MANEJANDO FICHEROS Y CARPETAS

Manual de Acceso y Problemas de acceso comunes

Una App para Facebook

Uso de varias pantallas y pantalla Splash

Instalación del Admin CFDI

Transcripción:

Haciendo pruebas sobre Splinter Esta clase analizaremos cómo automatizar el navegador web, algo que nos puede permitir realizar carga de datos masiva o pruebas de integración. La herramienta que utilizaremos se llama Splinter, y básicamente funciona como un objeto python que hace de intermediario con el navegador. Modos de uso de splinter Existen dos grandes casos de uso para una herramienta como sprinter: Automatizar pruebas de funcionamiento sobre una aplicación web. Ideal para proyectos en pleno desarrollo. Utilizarla como herramienta de automatización de tareas: cargar cantidades muy grandes de información en el navegador, reducir tareas repetitivas, extraer datos del navegador automáticamente etc En cualquiera de los dos casos, podremos crear un script de python con todas las instrucciones que debe seguir el navegador. Instalación Splinter es un módulo externo, así que tenemos que instalarlo con un comando del sistema: sudo pip install splinter Si este comando no funciona, posiblemente necesites ejecutar estos dos comandos antes: sudo apt-get install python-setuptools sudo easy_install pip

Inicialización Para comenzar, podrías abrir un intérprete de python e inicializar el objeto Browser: import splinter b = splinter.browser() La segunda sentencia abrirá una instancia del navegador Firefox, que se podrá controlar con el objeto que tiene de nombre b. Si quieres abrir otro navegador en su lugar, como chrome, podrías escribir b = splinter.browser('chrome') Ten en cuenta que esta sentencia puede tardar unos segundos en responder Nota: en huayra linux notamos que necesitas ejecutar el comando sudo apt-get install iceweasel antes de inicializar splinter. Explorando Hay varias formas de comenzar a familiarizarse con una biblioteca como sprinter. Lo primero que debemos tener en cuenta es que obtuvimos un objeto, llamado b, así que podemos conocer sus atributos usando la función dir o help : dir(b) help(b) Incluso intérpretes cómo ipython, idle o lanas te podrían servir de utilizar gracias a su autocompletado:

Mensajes básicos Vamos a construir un script de python que visite el sitio del curso, luego haga click en un link con el texto "gcoop" y que por último haga una búsqueda. Comencemos diciéndole a sprinter que visite el sitio del curso: b.visit('http://cursofp.com.ar') Listo, en pantalla deberías ver que el navegador cambió de ruta:

Clicks Para poder hacer clicks sobre elementos, tenemos que realizar dos pasos: Buscar y obtener la referencia a los elementos que queremos pulsar. Usar la referencia y enviarle el mensaje "click". Realizaremos estos pasos en dos lineas de código: links = b.find_link_by_text('scoop') links.click() La primer linea identifica todos los links dentro de la página que dicen exactamente 'gcoop'. Mientras que la segunda linea hace click sobre el primero de los elementos que identificó. Ten en cuenta que el objeto link sirve mientras no cambiemos de página. Si le envías el mensaje click, y la página cambia, splinter no te dejará

Si le envías el mensaje click, y la página cambia, splinter no te dejará hacer nada mas con ese objeto link. Tendrías que volver a generarlo. Completando campos de texto Ejecutando el código anterior, el navegador nos tendría que mostrar el sitio de gcoop. Observa que en la parte superior derecha aparece un cuadro de texto con un botón al lado que dice buscar: Es decir, si estuviéramos usando el mouse y el teclado, la forma de realizar una búsqueda en este sitio es hacer click con el mouse sobre el campo de texto, escribir lo que queremos buscar y luego pulsar el botón "Buscar". Hagamos esto desde el mismo intérprete: Necesitamos identificar esa caja de texto, pero a diferencia del link que pulsamos anteriormente, aquí no tenemos texto para buscar, el elemento HTML está vacío, necesitamos identificarlo de otra forma. En los sitios webs se suele dar un nombre a cada componente de forma que se lo pueda identificar, así que podemos usar la herramienta de inspección del navegador para llegar exactamente al nombre del elemento: Pulsa el botón derecho sobre el campo de texto y selecciona "Inspeccionar elemento". Lo que tendrías que ver en pantalla es el código HTML de ese elemento en particular, y ahí observarás que el nombre de ese componente es search_theme_form. Ese es el nombre que nos permite identificar al

search_theme_form. Ese es el nombre que nos permite identificar al elemento: Ahora, solo tenemos que decirle a sprinter que cargue texto en ese elemento y luego pulse el botón buscar: boton_buscar = b.find_by_name('op') boton_buscar.click()

Recursos Vimos solo unos poquitos métodos de splinter, pero la funcionalidad de splinter es mucho mayor. Te recomendamos crear un script de automatización para algún sitio web, es una oportunidad práctica para investigar y utilizar splinter. Estos son algunos links que pueden complementar lo que estuvimos viendo en clase: Sitio de splinter: http://splinter.cobrateam.info/ Intérprete lanas: https://github.com/hugoruscitti/lanas