[Distutils] Using `pkg_resources` without importing the module

P.J. Eby pje at telecommunity.com
Mon Jul 11 04:36:15 CEST 2011

At 12:38 AM 7/11/2011 +0200, cool-RR wrote:
>On Mon, Jul 11, 2011 at 12:33 AM, P.J. Eby 
><<mailto:pje at telecommunity.com>pje at telecommunity.com> wrote:
>At 09:25 PM 7/10/2011 +0200, cool-RR wrote:
>I want to use `pkg_resources` to retrieve an image file from a 
>Python package. But I want to do this without importing the actual 
>package. Is this possible using `pkg_resources`, or does it import the package?
>It imports the package, as it needs to know what loader object was 
>used, to know whether it will be reading from a zipfile or whatever else.
>Hm. Are you familiar with any other method that can be used to get 
>resources without importing?
>If you don't, then my next direction is to combine `pkg_resources` 
>with my "module-tasting" technique; using an `__import__` hook to do 
>a very minimialistic import of a module/package, without importing 
>any other modules that it tries to import. Do you think that this 
>minimalistic import will give `pkg_resources` enough data (about the 
>loader or otherwise) to get the resources?

Dunno.  It looks for a __loader__ attribute, so that's got to be 
there.  (Unless it's a normal filesystem package or module; that's 
the case where __loader__ is not normally set.)

More information about the Distutils-SIG mailing list