dynamic导入Python模块

我有一个可信的远程服务器,存储了很多自定义的Python模块。 我可以通过HTTP(例如使用urllib2.urlopen )作为text / plain来获取它们,但我无法将获取的模块代码保存到本地硬盘。 我如何将代码作为一个完全可操作的Python模块导入,包括其全局variables和导入?
我想我必须使用execimp模块的function的一些组合,但我一直无法使其工作。

看起来这应该做的伎俩: 导入一个dynamic生成的模块

 >>>importimp
 >>> foo = imp.new_module(“foo”)
 >>> foo_code =“”“
 ... Foo级:
通过
 ...“”“
 >>> foo中的exec foo_code .__ dict__
 >>> foo.Foo .__模块___
 “富”
 >>>

另外,正如ActiveState文章中所build议的那样,您可能需要将新模块添加到sys.modules

 >>>导入sys
 >>> sys.modules [“foo”] = foo
 >>>从foo import Foo
 <class'Foo'...>
 >>>

下面是我collections的一些东西,包括类似的东西:

  • 自定义Python导入系统

这是有点超出你想要的,但基本的想法是在那里。