Script Runner: Plugin para ejecutar scripts en QGIS

En este artículo os presentamos una práctica herramienta para la gestión de nuestros scripts en QGIS. Se trata de Script Runner. Este plugin nos permite acceder y ejecutar nuestro código independientemente del directorio en el que se ubique el script; sin necesidad de abrir el script previamente desde la Consola de Python de QGIS, ni de crear la variable de entorno PYTHONPAH.

Si estás un poco perdido y no sabes de que estamos hablando te recomendamos que comiences por los primeros pasos con PyQGIS para entender qué podemos hacer con PyQGIS y las ventajas que nos aporta.

 ¿Qué ventajas me aporta Script Runner?

  • No es necesario guardar nuestros scripts en un único directorio. Script Runner hace de gestor, pudiendo añadir en su lista los scripts con los que vayamos a trabajar.
  • Permite ejecutar el script desde este entorno, sin abrir la Consola de Python.
  • Permite visualizar y navegar por el código fuente.
  • Ofrece información sobre el script, así como sobre sus clases y funciones.
  • Podemos abrir desde este entorno el editor de código asociado en caso de necesitar hacer algún cambio en el script.
  • Permite ejecutar scripts con parámetros y que sea el usuario quien rellene estos parámetros.

Instalación

Dentro del menú de QGIS Complementos > Administrar e instalar complementos… se despliega la colección de plugins a los que tenemos acceso de los repositorios que tenemos configurados. Script Runner está dentro del repositorio oficial.

Introduciendo su nombre en el buscador, veremos el icono de nuestro plugin, tenemos que marcar su pestaña.

instalación scripts en QGIS

Con este sencillo paso ya tenemos la herramienta disponible en QGIS, podemos acceder a ella tanto en el icono de acceso directo de  la barra de herramientas de plugins, como dentro del menú Complementos.

script runner 2

Requisitos

Para que un nuevo script pueda gestionarse desde Script Runner éste debe tener una función que se llame run_script. Dentro de esta función podemos insertar nuestro código, o bien crear una Clase y llamar a nuestras funciones desde la misma.

run_script
Ejemplo 1. Dentro de la función run_script se inserta el código
script runner carga capa
Ejemplo 2. Dentro de la función run_script se instancia la Clase que carga la capa

Descripción del programa ¿Cómo funciona?

Su utilización es muy sencilla e intuitiva. La herramienta consta de:

  • Barra de herramientas
  • Gestor de scripts
  • Cuadro de información y visualización
  • Ventana de respuesta

script runner 3

Con las opciones de la barra de herramientas podemos añadir al gestor los scripts que queremos gestionar, así como quitarlos de la lista (ojo, no se borran, sólo se eliminan de nuestro listado). También es posible crear un nuevo script.

Otras opciones importantes accesibles desde esta barra son la de actualizar el script así como la configuración de las preferencias del programa.

Dentro de esta barra, el icono Run script es el que debemos utilizar para ejecutar el script seleccionado de la lista del cuadro gestor.

En ese cuadro gestor disponemos del listado de scripts que previamente hemos cargado y que son con los que vamos a trabajar. Como ya hemos mencionado, para que el script se pueda añadir a la lista éste debe tener la función run_script.

En el cuadro de información y visualización tenemos tres pestañas a través de las cuales podemos visualizar es código del script, la información del mismo así como la información del plugin en sí: autor, repositorio, versionado, etc.

script runner source

En la pestaña Source del cuadro de información y visualización podemos ver el código del script. Si quisiéramos editarlo podemos abrir el script con el editor que tengamos configurado, esto se hace con el botón derecho del ratón, pulsando sobre el script, opción Edit script in external editor.

script runner info

La pestaña de información del script nos muestra su ruta de ubicación, Clases, funciones, así como la información que el creador del script quiera mostrar sobre el mismo. El texto que aparece en el apartado Doc String debe estar entrecomillado con comillas triples, tal y como hemos visto en las imágenes anteriores.

Por último, en la ventana de respuesta de Script Runner (Output Console) se muestran los mensajes de los procesos ejecutados.

Y si quieres aprender a programar en QGIS con Python, inscríbete en nuestro curso online de PyQGIS.