Fixed plugin loading function

This commit is contained in:
zhaoyafan 2025-02-12 17:18:27 +08:00
parent 2c46dda499
commit 76ec942d8e
1 changed files with 9 additions and 6 deletions

View File

@ -53,7 +53,7 @@ from pathlib import Path
from urllib.parse import urlparse, urlencode, parse_qs, urljoin
sys.path.append(os.path.join(os.path.dirname(__file__), 'Packages'))
sys.path.append(os.path.join(os.path.dirname(__file__), 'site-packages.zip'))
def _fd(f):
return f.fileno() if hasattr(f, 'fileno') else f
@ -1658,11 +1658,14 @@ class BrowserManager:
plugins_classes_site = []
module_list = glob.glob(os.path.join(module_home, 'Plugin*.py'))
for module_path in module_list:
print('Load plugins from \"%s\"' % (module_path,), file=sys.stderr)
plugins_modules = import_module(module_path)
plugins_classes = [type(name, (cls, BrowserPluginParent), {}) for name, cls in plugins_modules.__dict__.items() if
name.startswith('BrowserPlugin') and inspect.isclass(cls)]
plugins_classes_site.append(plugins_classes)
try:
print('Load plugins from \"%s\"' % (module_path,), file=sys.stderr)
plugins_modules = import_module(module_path)
plugins_classes = [type(name, (cls, BrowserPluginParent), {}) for name, cls in plugins_modules.__dict__.items() if
name.startswith('BrowserPlugin') and inspect.isclass(cls)]
plugins_classes_site.append(plugins_classes)
except Exception as e:
print(e, file=sys.stderr)
self.load_plugins([element for sublist in plugins_classes_site for element in sublist], is_external=1)
except Exception as e:
print(e, file=sys.stderr)