我想写一个脚本来自动设置一个全新的ubuntu安装并安装一个基于django的应用程序。由于该脚本将在新服务器上运行,Python脚本需要自动安装一些必需的模块。如何在运行时安装和导入Python模块?
这是脚本。
#!/usr/bin/env python
import subprocess
import os
import sys
def pip_install(mod):
print subprocess.check_output("pip install %s" % mod, shell=True)
if __name__ == "__main__":
if os.getuid() != 0:
print "Sorry, you need to run the script as root."
sys.exit()
try:
import pexpect
except:
pip_install('pexpect')
import pexpect
# More code here...
的pexpect
安装是成功的,但下一行import pexpect
失败。我认为它是因为在运行时代码不知道新安装的pexpect
。
如何在运行时安装和导入Python模块?我接受另一种方法。
未经测试:'Pexpect的= __import __( 'Pexpect的')' –