Configurando el entorno de desarrollo para PyQGIS en Windows

Por si existen dudas, a continuación se muestran los pasos a seguir para empezar a desarrollar con la API de Python de QGIS, en el sistema operativo Windows y sin emplear el instalador OSGeo4W.

Para desarrollar aplicaciones independientes de escritorio con PyQGIS se puede usar el paquete OSGeo4W, que configura variables de entorno y permite la instalación de diferentes librerías de manera centralizada. Después de instalar QGIS con OSGeo4W se ejecuta la terminal de comandos de OSGeo4W y después de configurar variables de entorno, es posible ejecutar aplicaciones de PyQGIS. Ver la actualización del post para más detalles.

Si por alguna razón no se va a utilizar OSGeo4W (a mi por ejemplo, me gusta instalar cada paquete por separado para tener mayor control en la configuración) se deben seguir los siguientes pasos:

1. Instalar QGIS

Instalar en el directorio raíz (C:) el paquete Windows-Standalone prestando atención a las notas para instalación de librerías redistribuibles de Microsoft. Se recomienda la instalación en C:\ para evitar problemas posteriores relacionados con espacios en rutas.

2. Instalar Python

Instalar Python para Windows. Si bien Python ya ha alcanzado la versión 3, su implementación en los diferentes programas que lo utilizan se está llevando a cabo o está siendo planeado en la actualidad. Por tanto se deben mirar las versiones 2.x. Es recomendable descargar la versión 2.5.4 porque los módulos de PyQGIS (del instalador independiente) dependen de Python 2.5. Por defecto se instala en C:\Python25.

3. Instalar PyQt4

Instalar PyQt4 para Windows. Se debe descargar el archivo que corresponde a la versión instalada de Python (2.5.x), es decir, PyQt-Py2.5-gpl-4.7.3-1.exe.

4. Configurar variables de entorno

Para acceder a los módulos de Python y a las librerías de PyQGIS se requiere configurar variables de entorno. Hay diferentes maneras de hacerlo, mi favorita es escribir un archivo .bat con las siguientes líneas:

set PYTHONPATH=c:\\qgis\\python
set PATH=c:\\qgis\\bin;%PATH%

En el siguiente paso se hará uso del archivo creado.

5. Ejecutar la terminal de comandos de Windows (cmd)

Dirigirse desde la terminal de comandos a la carpeta que contiene el archivo .bat creado y ejecutarlo.

Ejecución archivo .bat

Ahora se ingresa a la consola de Python ejecutando la instrucción:

c:\\python25\\python.exe

Una vez allí, se importan las librerías de QGIS y PyQt4 y se verifica que no se han obtenido errores:

>>from qgis.core import *
>>from qgis.gui import *
>>from PyQt4.QtCore import *
>>from PyQt4.QtGui import *
Importar librerías

6. Ejecutar aplicación de ejemplo

Ahora es posible ejecutar el visor de PyQGIS que se ha construido en blogs anteriores. NOTA: Para ejecutar el visor de PyQGIS en Windows será necesario cambiar el valor de la variable qgis_prefix del archivo principal de la aplicación para que apunte al directorio de QGIS, es decir, debe quedar así: qgis_prefix = “c:\qgis”

Ejecución del visor de PyQGIS
Visor de PyQGIS

Eso es todo!

ACTUALIZACIÓN (2011/01/15): INSTRUCCIONES PARA EL ENTORNO DE DESARROLLO PARA PyQGIS USANDO OSGeo4W

Las instrucciones proporcionadas en este post funcionaron correctamente hasta la versión 1.4 de QGIS. Después, el instalador de QGIS para Windows cambió la estructura de directorios para las librerías (dll), por lo cual dichas instrucciones no permiten configurar el entorno de desarrollo para versiones de QGIS >= 1.5.

En todo caso, como alternativa para versiones recientes, a continuación se describe la configuración del entorno de desarrollo para PyQGIS usando el paquete OSGeo4W.

1. Descargar el instalador de OSGeo4W desde este enlace.

2. Instalar QGIS: Se puede hacer desde la opción Express Install o Advanced Install. Al hacerlo, adicionalmente se instala Python y Qt4.

3. Abrir la terminal de OSGeo4W (OSGeo4W Shell): Esto puede hacerse desde el menú Inicio –> Programas –> OSGeo4W

4. Definir las variables de entorno PYTHONPATH y PATH: Una de las maneras de hacerlo es ejecutando desde la terminal de OSGeo4W un archivo .bat que puede descargarse desde este enlace.

OSGeo4W Shell

Este archivo define las variables de entorno así:

set PYTHONPATH=c:\\OSGeo4W\\apps\\qgis\\python
set PATH=c:\\OSGeo4W\\apps\\qgis\\bin;%PATH%

5. Ejecutar Python desde la terminal e importar las librerías de QGIS para Python. Si todo ha salido bien, no obtendremos errores.

OSGeo4W

Eso es todo!