KekikStream 2.5.3__py3-none-any.whl → 2.5.4__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -25,7 +25,7 @@ class PluginBase(ABC):
25
25
  self.main_page = {url.replace(self.main_url, new_url): category for url, category in self.main_page.items()}
26
26
  self.main_url = new_url
27
27
 
28
- def __init__(self, proxy: str | dict | None = None, extractor_dir: str = "Extractors"):
28
+ def __init__(self, proxy: str | dict | None = None, ex_manager: str | ExtractorManager = "Extractors"):
29
29
  # cloudscraper - for bypassing Cloudflare
30
30
  self.cloudscraper = CloudScraper()
31
31
  if proxy:
@@ -50,7 +50,12 @@ class PluginBase(ABC):
50
50
  })
51
51
 
52
52
  self.media_handler = MediaHandler()
53
- self.ex_manager = ExtractorManager(extractor_dir=extractor_dir)
53
+
54
+ # If an instance is passed, use it; otherwise create a new one
55
+ if isinstance(ex_manager, ExtractorManager):
56
+ self.ex_manager = ex_manager
57
+ else:
58
+ self.ex_manager = ExtractorManager(extractor_dir=ex_manager)
54
59
 
55
60
  @abstractmethod
56
61
  async def get_main_page(self, page: int, url: str, category: str) -> list[MainPageResult]:
@@ -6,10 +6,10 @@ from pathlib import Path
6
6
  import os, importlib.util, traceback
7
7
 
8
8
  class PluginLoader:
9
- def __init__(self, plugins_dir: str, proxy: str | dict | None = None, extractor_dir: str = "Extractors"):
9
+ def __init__(self, plugins_dir: str, proxy: str | dict | None = None, ex_manager: str | ExtractorManager = "Extractors"):
10
10
  # Yerel ve global eklenti dizinlerini ayarla
11
11
  self.proxy = proxy
12
- self.extractor_dir = extractor_dir
12
+ self.ex_manager = ex_manager
13
13
  self.local_plugins_dir = Path(plugins_dir).resolve()
14
14
  self.global_plugins_dir = Path(__file__).parent.parent.parent / "Plugins"
15
15
 
@@ -69,7 +69,7 @@ class PluginLoader:
69
69
  obj = getattr(module, attr)
70
70
  if isinstance(obj, type) and issubclass(obj, PluginBase) and obj is not PluginBase:
71
71
  # konsol.log(f"[yellow]Yüklenen sınıf\t\t: {module_name}.{obj.__name__} ({obj.__module__}.{obj.__name__})[/yellow]")
72
- return obj(proxy=self.proxy, extractor_dir=self.extractor_dir)
72
+ return obj(proxy=self.proxy, ex_manager=self.ex_manager)
73
73
 
74
74
  except Exception as hata:
75
75
  konsol.print(f"[red][!] Eklenti yüklenirken hata oluştu: {module_name}\nHata: {hata}")
@@ -4,9 +4,9 @@ from .PluginLoader import PluginLoader
4
4
  from .PluginBase import PluginBase
5
5
 
6
6
  class PluginManager:
7
- def __init__(self, plugin_dir="Plugins", proxy: str | dict | None = None, extractor_dir: str = "Extractors"):
7
+ def __init__(self, plugin_dir="Plugins", proxy: str | dict | None = None, ex_manager: str | ExtractorManager = "Extractors"):
8
8
  # Eklenti yükleyiciyi başlat ve tüm eklentileri yükle
9
- self.plugin_loader = PluginLoader(plugin_dir, proxy=proxy, extractor_dir=extractor_dir)
9
+ self.plugin_loader = PluginLoader(plugin_dir, proxy=proxy, ex_manager=ex_manager)
10
10
  self.plugins = self.plugin_loader.load_all()
11
11
 
12
12
  def get_plugin_names(self):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: KekikStream
3
- Version: 2.5.3
3
+ Version: 2.5.4
4
4
  Summary: terminal üzerinden medya içeriği aramanızı ve VLC/MPV gibi popüler medya oynatıcılar aracılığıyla doğrudan izlemenizi sağlayan modüler ve genişletilebilir bir bıdı bıdı
5
5
  Home-page: https://github.com/keyiflerolsun/KekikStream
6
6
  Author: keyiflerolsun
@@ -12,9 +12,9 @@ KekikStream/Core/Extractor/ExtractorModels.py,sha256=Qj_gbIeGRewaZXNfYkTi4FFRRq6
12
12
  KekikStream/Core/Extractor/YTDLPCache.py,sha256=sRg5kwFxkRXA_8iRwsV29E51g9qQJvg8dWUnzfr7EwA,984
13
13
  KekikStream/Core/Media/MediaHandler.py,sha256=MEn3spPAThVloN3WcoCwWhpoyMA7tAZvcwYjmjJsX3U,7678
14
14
  KekikStream/Core/Media/MediaManager.py,sha256=AaUq2D7JSJIphjoAj2fjLOJjswm7Qf5hjYCbBdrbnDU,438
15
- KekikStream/Core/Plugin/PluginBase.py,sha256=2T9y1bXTZdSQd_FqN8M7giVNjv4ReerONIye-uGZW2M,7397
16
- KekikStream/Core/Plugin/PluginLoader.py,sha256=OOSXOpS2FbUQiHJAxzyyJEgtn4XsvkQTCjLli6ukx7M,3781
17
- KekikStream/Core/Plugin/PluginManager.py,sha256=isVyfXJ_41p_pvEQrC4G6tNkDyZ-f-SDnaAHci9grtA,1003
15
+ KekikStream/Core/Plugin/PluginBase.py,sha256=Pfh-cTetYM6vXo9US-AFd_HBCFTmSP7KhLqV6Rkpmi4,7599
16
+ KekikStream/Core/Plugin/PluginLoader.py,sha256=Gtg0s4JKAHB1kWs-WM7gghClZwC1d3RITI88uNMSelA,3785
17
+ KekikStream/Core/Plugin/PluginManager.py,sha256=sOVU_sCuPdk7j1gy-LsAiqPO0cw-VY_2rGJ1L1j6jS0,1013
18
18
  KekikStream/Core/Plugin/PluginModels.py,sha256=7g1uHjJstfnrdTabDgyrBnu1ojIQ025hsmw85cDXFS8,2353
19
19
  KekikStream/Core/UI/UIManager.py,sha256=T4V_kdTTWa-UDamgLSKa__dWJuzcvRK9NuwBlzU9Bzc,1693
20
20
  KekikStream/Extractors/Abstream.py,sha256=Xz2Ok84BJU5YRhQZjIM0rJA8GFju2BQimV8mHLXq3vc,905
@@ -91,9 +91,9 @@ KekikStream/Plugins/SuperFilmGeldi.py,sha256=hXhYYuQkVbYJ07P8y5QjY5iR3rVgUfAWc_M
91
91
  KekikStream/Plugins/UgurFilm.py,sha256=2U3-rC9JzwDoF1c8t3VyE3jMcz-SB51uxFX-8DqrQ7M,6778
92
92
  KekikStream/Plugins/Watch32.py,sha256=wAw-glE9bQNsyfzhv1zlFIjYAhSvK58mUri-XGytuHs,7318
93
93
  KekikStream/Plugins/YabanciDizi.py,sha256=aqdPLQ3Oajs32JNkgIPeqHuYgcM8K2jGHT0Ikw8Q6jY,10582
94
- kekikstream-2.5.3.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
95
- kekikstream-2.5.3.dist-info/METADATA,sha256=13wVwDb8LW9nzEXdeJhUoKgBFcK_nt_3uxLPZ8-roEg,10761
96
- kekikstream-2.5.3.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
97
- kekikstream-2.5.3.dist-info/entry_points.txt,sha256=dFwdiTx8djyehI0Gsz-rZwjAfZzUzoBSrmzRu9ubjJc,50
98
- kekikstream-2.5.3.dist-info/top_level.txt,sha256=DNmGJDXl27Drdfobrak8KYLmocW_uznVYFJOzcjUgmY,12
99
- kekikstream-2.5.3.dist-info/RECORD,,
94
+ kekikstream-2.5.4.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
95
+ kekikstream-2.5.4.dist-info/METADATA,sha256=f-S9Wgw0Mf_-yq0d6pVDWLvU8-ZJiOaNCk-CCIDybBw,10761
96
+ kekikstream-2.5.4.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
97
+ kekikstream-2.5.4.dist-info/entry_points.txt,sha256=dFwdiTx8djyehI0Gsz-rZwjAfZzUzoBSrmzRu9ubjJc,50
98
+ kekikstream-2.5.4.dist-info/top_level.txt,sha256=DNmGJDXl27Drdfobrak8KYLmocW_uznVYFJOzcjUgmY,12
99
+ kekikstream-2.5.4.dist-info/RECORD,,