From df5d45e5ae5a417dca8cb7d280cb1ad1e54b2aec Mon Sep 17 00:00:00 2001 From: Grant Sanderson Date: Sat, 11 Aug 2018 17:15:38 -0700 Subject: [PATCH] Updated extract_scene to use importlib --- extract_scene.py | 28 ++++------------------------ 1 file changed, 4 insertions(+), 24 deletions(-) diff --git a/extract_scene.py b/extract_scene.py index 15bd822a..465b33f3 100644 --- a/extract_scene.py +++ b/extract_scene.py @@ -2,7 +2,8 @@ import sys import argparse -import imp +# import imp +import importlib import inspect import itertools as it import os @@ -236,30 +237,9 @@ def get_scene_classes(scene_names_to_classes, config): return prompt_user_for_choice(scene_names_to_classes) -def get_module_windows(file_name): - module_name = file_name.replace(".py", "") - last_module = imp.load_module( - "__init__", *imp.find_module("__init__", ['.'])) - for part in module_name.split(os.sep): - load_args = imp.find_module( - part, [os.path.dirname(last_module.__file__)]) - last_module = imp.load_module(part, *load_args) - return last_module - - -def get_module_posix(file_name): - module_name = file_name.replace(".py", "") - last_module = imp.load_module(".", *imp.find_module(".")) - for part in module_name.split(os.sep): - load_args = imp.find_module(part, last_module.__path__) - last_module = imp.load_module(part, *load_args) - return last_module - - def get_module(file_name): - if os.name == 'nt': - return get_module_windows(file_name) - return get_module_posix(file_name) + module_name = file_name.replace(".py", "").replace(os.sep, ".") + return importlib.import_module(module_name) def main():