Mercurial > hg > pyloader
changeset 82:b57de7c38a74
add a file to import from the web
author | Jeff Hammel <jhammel@mozilla.com> |
---|---|
date | Thu, 28 Jul 2011 17:00:03 -0700 |
parents | 9203ca3a5182 |
children | 58eed691dca7 |
files | pyloader/require.py setup.py |
diffstat | 2 files changed, 20 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pyloader/require.py Thu Jul 28 17:00:03 2011 -0700 @@ -0,0 +1,19 @@ +def require(url): + """ + import a module from the web + url should be like scheme://host.name/path/to/module.py + """ + import imp + 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.gettempdir(), filename) + f = file(dest, 'w') + f.write(contents) + f.close() + return imp.load_source(module, dest) + +# TODO: make an equivalent method for a tarball