如何在程序中像easy_install一样来安装模块

发布时间:2020-11-21编辑:脚本学堂
在Uliweb中,用户可以自已编写App,而且这些App可能依赖于其它的模块,因此如何安装是一个问题。想到使用easy_install来实现这一目的。

在Uliweb中,用户可以自已编写App,而且这些App可能依赖于其它的模块,因此如何安装是一个问题。
想到使用easy_install来实现这一目的。找到easy_install程序,来看一下它的实现:
 

复制代码 代码如下:

import sys

from pkg_resources import load_entry_point
sys.exit(
load_entry_point('setuptools==0.6c9', 'console_scripts', 'easy_install')()
)

改造成:
 

复制代码 代码如下:

def install(packages):
from pkg_resources import load_entry_point

load = load_entry_point('setuptools', 'console_scripts', 'easy_install')
load(packages)

就可以使用了。
使用时:
 

复制代码 代码如下:
load(['SQLAlchemy'])
 

就可以安装SQLAlchemy了。