KekikStream 1.8.8__py3-none-any.whl → 1.8.9__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.
@@ -9,14 +9,12 @@ class MediaHandler:
9
9
  self.title = title
10
10
  self.headers = {}
11
11
 
12
- self._ytdlp_extractors = yt_dlp.extractor.list_extractors()
13
-
14
12
  def should_use_ytdlp(self, url: str, user_agent: str) -> bool:
15
13
  """
16
- yt-dlp gereken durumları akıllıca tespit et
14
+ yt-dlp gereken durumları profesyonel şekilde tespit et
17
15
 
18
- yt-dlp'nin kendi 1863+ extractor'ını kullanarak otomatik tespit yapar.
19
- YouTube, Vimeo, Twitch, TikTok, Instagram vb. binlerce site için çalışır.
16
+ yt-dlp'nin native Python API'sini simulate mode ile kullanarak
17
+ güvenilir ve performanslı tespit yapar.
20
18
 
21
19
  Args:
22
20
  url: Video URL'si
@@ -35,23 +33,28 @@ class MediaHandler:
35
33
  konsol.log("[cyan][ℹ] User-Agent bazlı yt-dlp tespiti[/cyan]")
36
34
  return True
37
35
 
38
- # 2. yt-dlp'nin kendi extractor tespitini kullan
36
+ # 2. yt-dlp'nin native Python API'sini kullan (simulate mode)
39
37
  try:
40
- # Tüm extractorları kontrol et (Generic hariç)
41
- for ie in self._ytdlp_extractors:
42
- # Generic extractor'ı atla (her URL'ye uygundur ama özel değildir)
43
- if ie.ie_key() == 'Generic':
44
- continue
45
-
46
- # Bu extractor bu URL'yi işleyebilir mi?
47
- if ie.suitable(url):
48
- konsol.log(f"[cyan][ℹ] yt-dlp extractor bulundu: {ie.ie_key()}[/cyan]")
38
+ ydl_opts = {
39
+ "simulate" : True, # Download yok, sadece tespit
40
+ "quiet" : True, # Log kirliliği yok
41
+ "no_warnings" : True, # Uyarı mesajları yok
42
+ "extract_flat" : True # Minimal işlem
43
+ }
44
+
45
+ with yt_dlp.YoutubeDL(ydl_opts) as ydl:
46
+ # URL'yi işleyebiliyor mu kontrol et
47
+ info = ydl.extract_info(url, download=False, process=False)
48
+
49
+ # Generic extractor ise atla
50
+ if info and info.get("extractor_key") != "Generic":
51
+ konsol.log(f"[cyan][ℹ] yt-dlp extractor: {info.get('extractor_key', 'Unknown')}[/cyan]")
49
52
  return True
50
53
 
51
- # Özel extractor bulunamadı
52
- return False
54
+ return False
53
55
 
54
56
  except Exception as e:
57
+ # yt-dlp işleyemezse False döndür
55
58
  konsol.log(f"[yellow][⚠] yt-dlp kontrol hatası: {e}[/yellow]")
56
59
  return False
57
60
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: KekikStream
3
- Version: 1.8.8
3
+ Version: 1.8.9
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
@@ -8,7 +8,7 @@ KekikStream/Core/Extractor/ExtractorBase.py,sha256=Yj7CGvm2ZKxlvuUkZu0X1Pl0JMH25
8
8
  KekikStream/Core/Extractor/ExtractorLoader.py,sha256=7uxUXTAuF65KKkmbI6iRiCiUhx-IqrronB7ixhchcTU,4289
9
9
  KekikStream/Core/Extractor/ExtractorManager.py,sha256=4L1H3jiTnf0kTq4W6uS7n95bBYHlKJ8_hh0og8z4erQ,1244
10
10
  KekikStream/Core/Extractor/ExtractorModels.py,sha256=Qj_gbIeGRewaZXNfYkTi4FFRRq6XBOc0HS0tXGDwajI,445
11
- KekikStream/Core/Media/MediaHandler.py,sha256=ZVFFWeXpZxrcdDcAQdYdm-l7_0PLG1J8vU-2e3Ti00E,9546
11
+ KekikStream/Core/Media/MediaHandler.py,sha256=9TVF0zuoj_1jSVOoU-juD6n_XsjnjiHg1IFJrpg1m8k,9705
12
12
  KekikStream/Core/Media/MediaManager.py,sha256=AaUq2D7JSJIphjoAj2fjLOJjswm7Qf5hjYCbBdrbnDU,438
13
13
  KekikStream/Core/Plugin/PluginBase.py,sha256=uzJb8DqJfXOteteSBhG9QWUrFgb4JTByV_GbODz-9gs,3872
14
14
  KekikStream/Core/Plugin/PluginLoader.py,sha256=yZxMug-OcJ5RBm4fQkoquKrZxcBU7Pvt4IcY-d0WU8g,3393
@@ -77,9 +77,9 @@ KekikStream/Plugins/SinemaCX.py,sha256=DUvYa7J4a2D5ivLO_sQiaStoV5FDxmz8onJyFwAid
77
77
  KekikStream/Plugins/Sinezy.py,sha256=EttAZogKoKMP8RP_X1fSfi8vVxA2RWizwgnLkmnhERQ,5675
78
78
  KekikStream/Plugins/SuperFilmGeldi.py,sha256=Ohm21BPsJH_S1tx5i2APEgAOD25k2NiwRP7rSgAKvRs,5289
79
79
  KekikStream/Plugins/UgurFilm.py,sha256=eKGzmSi8k_QbXnYPWXZRdmCxxc32zZh4rynmdxCbm1o,4832
80
- kekikstream-1.8.8.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
81
- kekikstream-1.8.8.dist-info/METADATA,sha256=2hr4Q7pK4ntzpb6wrrYvLoW-jg534soRIxehxJIZOk8,9035
82
- kekikstream-1.8.8.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
83
- kekikstream-1.8.8.dist-info/entry_points.txt,sha256=dFwdiTx8djyehI0Gsz-rZwjAfZzUzoBSrmzRu9ubjJc,50
84
- kekikstream-1.8.8.dist-info/top_level.txt,sha256=DNmGJDXl27Drdfobrak8KYLmocW_uznVYFJOzcjUgmY,12
85
- kekikstream-1.8.8.dist-info/RECORD,,
80
+ kekikstream-1.8.9.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
81
+ kekikstream-1.8.9.dist-info/METADATA,sha256=biuumq6cqyGbTCNqBqMbXN0npvJGYrdZK8DokgOOxeQ,9035
82
+ kekikstream-1.8.9.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
83
+ kekikstream-1.8.9.dist-info/entry_points.txt,sha256=dFwdiTx8djyehI0Gsz-rZwjAfZzUzoBSrmzRu9ubjJc,50
84
+ kekikstream-1.8.9.dist-info/top_level.txt,sha256=DNmGJDXl27Drdfobrak8KYLmocW_uznVYFJOzcjUgmY,12
85
+ kekikstream-1.8.9.dist-info/RECORD,,