4 votos

Personal shell launcher para PyQGIS

He cambiado un shell launcher encontrar en http://inasafe.linfiniti.com/html/id/developer-docs/platform_windows.html como para encajar en mi deseo: configuración de las variables de entorno del sistema para poder utilizar PyQGIS módulos del valor por defecto de Python IDLE interfaz gráfica de usuario. Cuando intento ejecutar la versión original de la shell launcher funciona, es decir, yo a tener éxito en la importación (por ejemplo) de la "qgis.núcleo" del módulo, en entorno DOS. Cuando inicio mi uno modificado (ver más abajo) que se inicia el shell, pero las variables no parecen ser ajustado correctamente, como la importación de las salidas del módulo el error:

ImportError: DLL load failed: Impossibile trovare il modulo specificato # (impossible to import the specified module)

Mi sistema operativo es Windows XP sp3, Python 2.7.3 y QGIS es Lisboa v. 1.8. Aquí está mi personal SHELL LAUNCHER:

@echo off
SET OSGEO4W_ROOT=C:\QUANTU~1
call "%OSGEO4W_ROOT%"\bin\o4w_env.bat
call "%OSGEO4W_ROOT%"\apps\Python27\Lib\idlelib\idle.pyw
@echo off
SET GDAL_DRIVER_PATH=%IDLE%\bin\gdalplugins\1.9
path %PATH%;%OSGEO4W_ROOT%\apps\qgis\bin
path %PATH%;%OSGEO4W_ROOT%\apps\grass\grass-6.4.2\lib
path %PATH%;"%OSGEO4W_ROOT%\apps\Python27\Scripts\"

set PYTHONPATH=%PYTHONPATH%;%OSGEO4W_ROOT%\apps\qgis\python;
set PYTHONPATH=%PYTHONPATH%;%OSGEO4W_ROOT%\apps\Python27\Lib\site-packages
set QGIS_PREFIX_PATH=%OSGEO4W_ROOT%\apps\qgis

start "Quantum GIS Shell" /B "cmd.exe" %*

Cuando lo pruebe si las variables están configurados correctamente, parece que ellos son, pero todavía no están teniendo éxito en la importación de los módulos.

import sys
for item in sys.path:
    print item

C:\Windows\System32
C:\Quantum_GIS_Lisboa\apps\Python27\Lib\idlelib
C:\Quantum_GIS_Lisboa\apps\qgis\python
C:\Windows\system32\python27.zip
C:\Quantum_GIS_Lisboa\apps\Python27\DLLs
C:\Quantum_GIS_Lisboa\apps\Python27\lib
C:\Quantum_GIS_Lisboa\apps\Python27\lib\plat-win
C:\Quantum_GIS_Lisboa\apps\Python27\lib\lib-tk
C:\Python27\ArcGIS10.1
C:\Quantum_GIS_Lisboa\apps\Python27
C:\Quantum_GIS_Lisboa\apps\Python27\lib\site-packages
C:\Quantum_GIS_Lisboa\apps\Python27\lib\site-packages\PIL
C:\Quantum_GIS_Lisboa\apps\Python27\lib\site-packages\win32
C:\Quantum_GIS_Lisboa\apps\Python27\lib\site-packages\win32\lib
C:\Quantum_GIS_Lisboa\apps\Python27\lib\site-packages\Pythonwin
C:\Quantum_GIS_Lisboa\apps\Python27\lib\site-packages\wx-2.8-msw-unicode

1voto

Randyaa Puntos 904

Finalmente me las arreglé para que el personal de shell launcher! El truco fue investigar la "o4w_env.murciélago" de archivo con el fin de entender lo que la "llamada" en la segunda línea realmente. Así que he probado y de éxito con este:

  1. Copia de la "inactividad.pyw" (o el IDE de Que quieras utilizar el Quantum GIS de la carpeta principal (en mi caso fue "C:/Quantum_GIS_Lisboa");
  2. Copia el SHELL LAUNCHER (véase el punto 3) con la extensión ".bat" en "\bin";

  3. Ejecutar este SHELL LAUNCHER (simple doble clic):

    @echo off

    CONJUNTO DE OSGEO4W_ROOT=C:\QUANTU~1

    la llamada "%OSGEO4W_ROOT%"\bin\o4w_env.bat

    @echo off

    CONJUNTO de GDAL_DRIVER_PATH=%INACTIVO%\bin\gdalplugins\1.9 path %PATH%;%OSGEO4W_ROOT%\apps\qgis\bin path %PATH%;%OSGEO4W_ROOT%\apps\hierba\hierba-6.4.2\lib path %PATH%;"%OSGEO4W_ROOT%\apps\Python27\secuencias de comandos\"

    conjunto de PYTHONPATH=%PYTHONPATH%;%OSGEO4W_ROOT%\apps\qgis\python; conjunto de PYTHONPATH=%PYTHONPATH%;%OSGEO4W_ROOT%\apps\Python27\Lib\site-packages conjunto de QGIS_PREFIX_PATH=%OSGEO4W_ROOT%\apps\qgis

    inicio "Quantum GIS Shell" /B "de reposo.pyw" %* # Esto es donde Usted especifica el IDE Que desea utilizar, el mío es "de reposo.pyw", pero si Se copia de otro (como en el punto 1), Se debe reemplazar "de reposo.pyw" con ""

Espero que esto podría ayudar a nadie. Saludos!

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X