Allow importing files through the web, by adding urls to pythopath
Project description
[ urlimport.py ]
Enables remote module importing through urllib2 and perforce.
author: Jure Vrscaj <jure@codeshift.net>
last contributed versions:
version: 0.72c (myevan <myevan_net@naver.com> fixes and improvements)
version: 0.85a (alex <alexbodn@012.net.il> fixes and improvements)
version: 0.72d (jure <jure@codeshift.net> found a bug and alex fixed it).
homepage: http://urlimport.codeshift.net
license: MIT
Usage:
import sys, urlimport
urlimport.config(**{
'ssl_key.https://your.url':'key for this url'
'ssl_cert.https://your.url':'cert for this url',
'opener.https://your.url':'opener for this url',
'cache_time.http://your.url':'timedelta to keep files in cache for this url',
'no_cache.url':True, # don't cache modules from this url
'user_agent.url':'user agent header for this url',
'ssl_key.host':'key for this host'
'ssl_cert.host':'cert for this host',
'opener.host':'opener for this host',
'cache_time.host':'timedelta to keep files in cache for this host',
'no_cache.host':True, # don't cache modules from this host
'user_agent.host':'user agent header for this host',
'ssl_key':'key for unspecified urls',
'ssl_cert':'cert for unspecified urls',
'opener':'opener for unspecified urls',
'no_cache':'True, #don't cache modules for unspecified urls
'user_agent':'user agent header for unspecified urls',
'cache_time':'timedelta to keep files in cache for unspecified urls',
#if cache_time is missing, keep forever, but check last_modified and etag
'cache_dir':'root of the cache dir', # if missing, a temp dir will be created,
# if empty, no cache will be used
'py_version_string': '$PYTHON_VERSION', # string in path to be replaced by
# $major.$minor
'debug': int(level of output text. see debug() function)
})
# note: if you supply your own opener, i'd recommand inheriting/implementing the
# status handling features from class DefaultErrorHandler below.
sys.path.insert(0, "http://your.url") #this may already be there, like setting
#PYTHONPATH
#but there is a danger default __import__
#would try it before
expect to have access to your modules at http://your.url
TODO:
- check what's mpath all about.
TODO later:
- python 3.1 support. preliminary work done
- url import of zipped modules
- support of other urls, like ssh, svn, hg, bzr, cvs etc.
- reload c extensions. well, they don't allways reload in local import either,
but my module does reload locally, so why not remotely?
introspection will help.
- swithch the usage of debug with some logging, and do some cleanup of the
calls.
Enables remote module importing through urllib2 and perforce.
author: Jure Vrscaj <jure@codeshift.net>
last contributed versions:
version: 0.72c (myevan <myevan_net@naver.com> fixes and improvements)
version: 0.85a (alex <alexbodn@012.net.il> fixes and improvements)
version: 0.72d (jure <jure@codeshift.net> found a bug and alex fixed it).
homepage: http://urlimport.codeshift.net
license: MIT
Usage:
import sys, urlimport
urlimport.config(**{
'ssl_key.https://your.url':'key for this url'
'ssl_cert.https://your.url':'cert for this url',
'opener.https://your.url':'opener for this url',
'cache_time.http://your.url':'timedelta to keep files in cache for this url',
'no_cache.url':True, # don't cache modules from this url
'user_agent.url':'user agent header for this url',
'ssl_key.host':'key for this host'
'ssl_cert.host':'cert for this host',
'opener.host':'opener for this host',
'cache_time.host':'timedelta to keep files in cache for this host',
'no_cache.host':True, # don't cache modules from this host
'user_agent.host':'user agent header for this host',
'ssl_key':'key for unspecified urls',
'ssl_cert':'cert for unspecified urls',
'opener':'opener for unspecified urls',
'no_cache':'True, #don't cache modules for unspecified urls
'user_agent':'user agent header for unspecified urls',
'cache_time':'timedelta to keep files in cache for unspecified urls',
#if cache_time is missing, keep forever, but check last_modified and etag
'cache_dir':'root of the cache dir', # if missing, a temp dir will be created,
# if empty, no cache will be used
'py_version_string': '$PYTHON_VERSION', # string in path to be replaced by
# $major.$minor
'debug': int(level of output text. see debug() function)
})
# note: if you supply your own opener, i'd recommand inheriting/implementing the
# status handling features from class DefaultErrorHandler below.
sys.path.insert(0, "http://your.url") #this may already be there, like setting
#PYTHONPATH
#but there is a danger default __import__
#would try it before
expect to have access to your modules at http://your.url
TODO:
- check what's mpath all about.
TODO later:
- python 3.1 support. preliminary work done
- url import of zipped modules
- support of other urls, like ssh, svn, hg, bzr, cvs etc.
- reload c extensions. well, they don't allways reload in local import either,
but my module does reload locally, so why not remotely?
introspection will help.
- swithch the usage of debug with some logging, and do some cleanup of the
calls.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
urlimport-0.85b-dev.tar.gz
(15.5 kB
view details)
Built Distribution
urlimport-0.85b_dev-py2.5.egg
(18.9 kB
view details)
File details
Details for the file urlimport-0.85b-dev.tar.gz
.
File metadata
- Download URL: urlimport-0.85b-dev.tar.gz
- Upload date:
- Size: 15.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 70b0a91413cc319386e6d76a23ff7e0929f31b1aa4accc6f748c64284381df26 |
|
MD5 | ba684a1c1c3dee999110a4a8de97247e |
|
BLAKE2b-256 | ca29c6b88db822b7931d1fe94808a77faa77e9986fa4ccc0b1c2005105d0f4cc |
File details
Details for the file urlimport-0.85b_dev-py2.5.egg
.
File metadata
- Download URL: urlimport-0.85b_dev-py2.5.egg
- Upload date:
- Size: 18.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4b8b78abc2cb192940612693b3170bf03b93be94d92452602f1a1c1d4c819768 |
|
MD5 | 0d353e3288f5e05855248bbbbe98aae2 |
|
BLAKE2b-256 | 2fe030b0254706d78f64f66dd44ad37b017b96644e6283c5edbbf9b63bbf95d7 |