You can use pip to install packages at runtime and importlib.import_module(moduleName) to import module by using its name as a string. For example,
import pip
import importlib
def import_with_auto_install(package):
try:
return importlib.import_module(package)
except ImportError:
pip.main(['install', package])
return importlib.import_module(package)
# Example
if __name__ == '__main__':
scrapy = import_with_auto_install('scrapy')
print(scrapy)The above script installs the scrapy module and imports it when installation of the module completes.