# main.py
if __name__ == '__main__':
if len(sys.argv) > 1:
file_path = sys.argv[1]
check_folder = os.path.dirname(file_path)
data = check_one_file(file_path)
else:
check_folder = os.path.dirname(sys.executable)
print(check_folder)
before_check(check_folder)
data = checking(check_folder)
# middleware.py
import os
import importlib
import sys
class MiddleWare:
def __init__(self, content):
self.content = content
self.result = []
self.run_all_py()
def run_all_py(self):
libraries_path = self.resource_path('check_items')
print(libraries_path)
files = os.listdir(libraries_path)
for file in files:
if file.endswith('.py') and file != "device.py":
try:
self.run(file)
except Exception as e:
print('file:{} Error: {}'.format(file, e))
def run(self, script_path):
script_name = "check_items." + os.path.basename(script_path).replace('.py', '')
mod = importlib.import_module(script_name)
result = mod.check_function(self.device)
if result:
problem, advise, detail = result
self.result.append([problem, advise, detail])
# visit resource lib
def resource_path(self, relative_path):
# check if Bundle Resource
if getattr(sys, 'frozen', False):
base_path = sys._MEIPASS
else:
base_path = os.path.abspath(".")
return os.path.join(base_path, relative_path)
编译时需要在datas字段增加资源文件夹信息: (资源文件夹的路径, 内部关联用的资源名称)
# xxx.spec
a = Analysis(
datas=[('check_items', 'check_items')],
)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)