-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathInstallRequirements.py
36 lines (34 loc) · 1.62 KB
/
InstallRequirements.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import pip
import subprocess
import sys
def import_or_install(path):
print("Checking required packages are installed...")
requirementsFile = open(path, "r")
requirementsContents = requirementsFile.read().strip().split()
for requirement in requirementsContents:
try:
print("====================================================")
print("Attempting to import: [" + requirement + "]")
__import__(requirement)
print("Success!")
print("====================================================")
except ImportError as e:
print("Importing [" + requirement + "] failed indicating it is not installed. Attempting to install module")
try:
# pip.main(['install', requirement])
subprocess.check_call([sys.executable, "-m", "pip", "install", requirement])
print("====================================================")
except:
print("Failure. Please install package: [" + requirement + "] manually using command line comand: ")
print()
print("---")
print(">> py -m pip install " + requirement)
print("---")
print()
print("Or if multiple package installations have failed, please use the command: ")
print("---")
print(">> py -m pip install -r ./path/to/requirements.txt")
print("---")
print("====================================================")
print("Finished package checking.")
import_or_install("requirements.txt")