Cómo configurar PyCharm para usarlo con QGIS 3.x y QGIS 2.x (en Windows)

324180_2445

La utilización de un IDE (Entorno de Desarrollo Integrado) cuando trabajamos con Python es fundamental, tanto para escribir código como para la detección y corrección de errores de programación.

Desde nuestra experiencia y la de nuestros alumnos, recomendamos utilizar Depurar código con PyScripter. El uso de PyScripter con ArcGIS 10 y la ArcPy es sencillo, no es necesario realizar ninguna modificación en PyScripter.

Sin embargo si decides explorar PyQGIS, la librería de scripting de QGIS, es necesario realizar algunos ajustes.

Puedes trabajar desde la consola de Python de QGIS sin ningún problema, pero en PyScripter o PyCharm cuando intentamos ejecutar la primera sentencia:

Nos aparece el siguiente error:

Para solucionar este error, tenemos que indicar al sistema dónde buscar las bibliotecas de QGIS y los módulos de Python, de lo contrario Python se quejará.

En nuestro caso la adaptación de PyScripter para trabajar con las librerías de PyQGIS ha sido imposible 🙁 .

La buena noticia es que no hemos tenido problemas cuando hemos probado a configurar PyCharm para usarlo con QGIS (en Windows). Además PyCharm es un excelente IDE para Python 🙂 .

Configurar PyCharm para usarlo con QGIS 3

En Linux no hay que hacer nada, pero en Windows necesitamos asegurarnos de que tiene la misma configuración de entorno y usar las mismas bibliotecas e intérprete que QGIS. La forma más rápida de hacer esto, es modificar el archivo por lotes de inicio de QGIS (el archivo .bat).

Puedes encontrar este archivo en la carpeta bin de tu instalación de QGIS. En principio debería ser: C:\OSGeo4W\bin\qgis.bat o si utilizamos la instalación independiente C:\Program Files\QGIS 3.0\bin\qgis.bat.

Para poder utilizar PyCharm, estos son los pasos que debemos seguir:

  1. Haz una copia de qgis.bat y cámbiale el nombre a PyCharm_PyQGIS.bat (u otro fácil de identificar).
  2. Ábrelo en un editor de texto.
  3. Elimina la última línea, la que inicia qgis. (start QGIS…)
  4. Añade una línea que apunte al archivo ejecutable PyCharm y añade el argumento de línea de comandos que establece la versión de python que se utilizará (36 en el caso de QGIS 3)
  5. Añade un argumento que apunte a la carpeta donde PyCharm puede encontrar la dll de python que utiliza QGIS, puedes encontrar esta dll en la carpeta bin de tu instalación de QGIS.

El código final del archivo PyCharm_PyQGIS.bat para QGIS 3 sería este:

Código del archivo PyCharm_PyQGIS.bat para QGIS 2.x sería:

Con esto ya tenemos configuradas las rutas de los módulos PyQGIS que dependen de las bibliotecas qgis_core y qgis_gui.

Ahora cuando hagamos doble clic en este archivo por lotes se iniciará PyCharm, con la ruta correcta y sin ningún error.

La primera vez que se abra PyCharm comenzará a cargar todas las librerías de QGIS, tarea que le llevará unos minutos, así que paciencia:

Configurar PyCharm

Por último es recomendable enviar al escritorio un acceso directo de este .bat. ya que siempre que queramos utilizar PyCharm deberemos ejecutar el archivo .bat.

Si quieres aprender a automatizar tareas en QGIS con Python apúntate ya a nuestro curso online de PyQGIS.

Let’s connect!

Date de alta en nuestro newsletter
y recibe este ebook gratuito

Y una vez al mes recibirás las últimas novedades del sector GIS y de nuestros cursos

4 comentarios en “Cómo configurar PyCharm para usarlo con QGIS 3.x y QGIS 2.x (en Windows)”

  1. Saludos una duda que me nace con este tema:

    Pycharm tiene una versión de la comunidad gratuita y otra que es profesional, por la cual hay que pagar una licencia que asta la fecha no he entendido bien si es por pagos mensualmente, anual o se obtiene por un pago único.
    en este caso y para este tema en especial que ganaría un desarrollador si tuviera la licencia; tendría algún beneficio mayor que valiera la pena en cuando a desarrollar para PyQGIS, o seria mejor trabajarlo libre puesto que no habrían beneficios.
    quedo a la espera de comentarios
    y gracias por este tema que es excelente los temas que me he encontrado acá.

  2. saludos
    excelente no sabia como usar esto sincronizado; uso PyCharm, pero no había pensado en usarlo así voy a probarlo;

  3. Buen trabajo Aurelio.

    Voy a probarlo a ver si soy capaz de, con la ayuda de pycharm, hacer algún plugin
    saludos

Los comentarios están cerrados.