# HG changeset patch # User Jeff Hammel # Date 1311781414 25200 # Node ID a9c3a32d83850cfefbae6493e832d3b43a89da9a # Parent f7cfd58eafe63afebdadf654e45500ad3f3f6f5f add a function for loading modules from the web diff -r f7cfd58eafe6 -r a9c3a32d8385 python/require.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/python/require.py Wed Jul 27 08:43:34 2011 -0700 @@ -0,0 +1,18 @@ +def require(url): + """ + import a module from the web + url should be like scheme://host.name/path/to/module.py + """ + import os + import tempfile + import urllib2 + contents = urllib2.urlopen(url).read() + filename = url.rsplit('/', 1)[-1] + module = filename.rsplit('.', 1)[-1] + dest = os.path.join(tempfile, filename) + f = file(dest, 'w') + f.write(contents) + f.close() + return imp.load_source(module, dest) + +# TODO: make an equivalent method for a tarball