packages y el archivo *.pth

Jose Jachuf jjachuf en gmail.com
Mie Mayo 2 15:33:52 CEST 2007


El día 2/05/07, Gabriel Genellina <gagsl-py2 en yahoo.com.ar> escribió:
>
> En Tue, 01 May 2007 22:54:45 -0300, José Jachuf <jjachuf en gmail.com>
> escribió:
>
> > Tengo corriendo a modo de prueba una pequeña aplicación web basada en
> > cgi. Desarrollé una serie de clases y modulos que implementan la lógica
> > y se encuentran agrupados en un package: webpkg.
> >
> > Si webpkg se encuentra dentro cgi funciona bien, lo mismo que si lo
> > muevo a Python24\Lib\site-packages\. En el primer caso no es conveniente
> > porque está dentro del area de publicación, y en el segundo estoy
> > limitado en le acceso al servidor para hacer modificaciones.
> >
> > Decidí ponerlo en otro directorio, que no es el de publicación, pero si
> > tengo acceso via ftp, supongamos x:\mi_directorio_ftp\webpkg. Luego creo
> > un archivo de texto con el nombre webpkg.pth y lo muevo a
> > Python24\Lib\site-packages\. webpkg.pth contiene una sola línea:
> > x:\mi_directorio_ftp\webpkg
> >
> > Si hago desde el interprete import sys -> sys.path aparece el nombre del
> > package, sin embargo mi aplicación produce un error por no encontrar al
> > package:
> >
> > ImportError: No module named webpkg
> > args = ('No module named webpkg',)
> >
> > Qué estoy haciendo mal o cómo debo hacer para que funcione?
>
> Para que "import webpkg" funcione, el directorio que *contiene* webpkg
> debe estar en la lista de búsqueda (sys.path). (Por ejemplo, cuando estaba
> en site-packages\webpkg, no era ese path completo el que veias en
> sys.path, sino solo hasta site-packages, ok?)
> Asi que lo que deberias poner en el .pth es x:\mi_directorio_ftp
> Pero no parece de lo mas adecuado. Sugiero entonces que crees un
> directorio adicional: x:\mi_directorio_ftp\packages, pongas en el .pth ese
> directorio, y ahi dentro pongas webpkg con todo su contenido
>
> --
> Gabriel Genellina


Hola Gabriel

gracias por contestar.

No entiendo muy bien la diferencia con lo que tengo. En este momento estoy
de viaje, cuando regrese lo probare.
De todas maneras lo que tengo es:

- x:\mi_directorio_ftp\webpkg
- un archivo en Python24\Lib\site-packages\ con nombre webpkg.pth, que
contiene un linea: x:\\mi_directorio_ftp\\webpkg

cuando muestro sys.path veo la ruta completa:
'x:\\mi_directorio_ftp\\webpkg' entre otras.

Saludos
Jose




Más información sobre la lista de distribución Python-es