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.85a-dev.tar.gz
(14.9 kB
view details)
Built Distribution
urlimport-0.85a_dev-py2.5.egg
(18.0 kB
view details)
File details
Details for the file urlimport-0.85a-dev.tar.gz
.
File metadata
- Download URL: urlimport-0.85a-dev.tar.gz
- Upload date:
- Size: 14.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3e8cc9c9bb78cafe23d60760323d2364c4f9e5aaf362179b110a886dcfdf3631 |
|
MD5 | 248898c599487a30c3e6aa91d2f17b4e |
|
BLAKE2b-256 | 875c36df0c3f6dd96b8c2ec21ea6bd318e9bd3b74fd31669c064922cac63762d |
File details
Details for the file urlimport-0.85a_dev-py2.5.egg
.
File metadata
- Download URL: urlimport-0.85a_dev-py2.5.egg
- Upload date:
- Size: 18.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f41fce80dfae713e90164b6ea397e1887607a4ad6e6b9f9a006328b02dad4d82 |
|
MD5 | a2ba1b3a5d3f01ba799b1245edfd0100 |
|
BLAKE2b-256 | 43733d7510a5871b16e1fa060c34e31fade53c3b4ba945640a254c644bc079b4 |