KekikStream 1.0.0__py3-none-any.whl → 1.0.2__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.
@@ -18,8 +18,12 @@ class MediaHandler:
18
18
  if extract_data.referer:
19
19
  self.headers.update({"Referer": extract_data.referer})
20
20
 
21
+ # ExtractResult'tan gelen headers'ları ekle
22
+ if extract_data.headers:
23
+ self.headers.update(extract_data.headers)
24
+
21
25
  # Google Drive gibi özel durumlar için yt-dlp kullan
22
- if self.headers.get("User-Agent") == "googleusercontent":
26
+ if self.headers.get("User-Agent") in ["googleusercontent", "Mozilla/5.0 (X11; Linux x86_64; rv:101.0) Gecko/20100101 Firefox/101.0"]:
23
27
  return self.play_with_ytdlp(extract_data)
24
28
 
25
29
  # İşletim sistemine göre oynatıcı seç
@@ -90,7 +94,7 @@ class MediaHandler:
90
94
 
91
95
  def play_with_ytdlp(self, extract_data: ExtractResult):
92
96
  try:
93
- ytdlp_command = ["yt-dlp", "--quiet", "--no-warnings", "--downloader", "ffmpeg", "--hls-use-mpegts"]
97
+ ytdlp_command = ["yt-dlp", "--quiet", "--no-warnings"]
94
98
 
95
99
  for key, value in self.headers.items():
96
100
  ytdlp_command.extend(["--add-header", f"{key}: {value}"])
@@ -0,0 +1,18 @@
1
+ # Bu araç @keyiflerolsun tarafından | @KekikAkademi için yazılmıştır.
2
+
3
+ from KekikStream.Core import ExtractorBase, ExtractResult
4
+ from Kekik.Sifreleme import AESManager
5
+ import re, json
6
+
7
+ class MolyStream(ExtractorBase):
8
+ name = "MolyStream"
9
+ main_url = "https://dbx.molystream.org"
10
+
11
+ async def extract(self, url, referer=None) -> ExtractResult:
12
+ return ExtractResult(
13
+ name = self.name,
14
+ url = url,
15
+ referer = url.replace("/sheila", ""),
16
+ headers = {"User-Agent": "Mozilla/5.0 (X11; Linux x86_64; rv:101.0) Gecko/20100101 Firefox/101.0"},
17
+ subtitles = []
18
+ )
@@ -57,7 +57,7 @@ class DiziBox(PluginBase):
57
57
  episodes.append(Episode(
58
58
  season = ep_season,
59
59
  episode = ep_episode,
60
- title = ep_title.strip(),
60
+ title = "",
61
61
  url = ep_href,
62
62
  ))
63
63
 
@@ -89,8 +89,12 @@ class DiziBox(PluginBase):
89
89
 
90
90
  crypt_data = re.search(r"CryptoJS\.AES\.decrypt\(\"(.*)\",\"", istek.text)[1]
91
91
  crypt_pass = re.search(r"\",\"(.*)\"\);", istek.text)[1]
92
+ decode = CryptoJS.decrypt(crypt_pass, crypt_data)
92
93
 
93
- results.append(CryptoJS.decrypt(crypt_pass, crypt_data))
94
+ if video_match := re.search(r"file: '(.*)',", decode):
95
+ results.append(video_match[1])
96
+ else:
97
+ results.append(decode)
94
98
 
95
99
  elif "/player/moly/moly.php" in iframe_link:
96
100
  iframe_link = iframe_link.replace("moly.php?h=", "moly.php?wmode=opaque&h=")
@@ -77,7 +77,7 @@ class Dizilla(PluginBase):
77
77
  bolumler.append(Episode(
78
78
  season = sezon.get("seasonNumber"),
79
79
  episode = bolum.get("episodeNumber"),
80
- title = bolum.get("name"),
80
+ title = "",
81
81
  url = await self.url_base_degis(bolum.get("url"), self.main_url),
82
82
  ))
83
83
 
@@ -111,4 +111,7 @@ class RecTV(PluginBase):
111
111
  async def play(self, name: str, url: str, referer: str, subtitles: list[Subtitle]):
112
112
  extract_result = ExtractResult(name=name, url=url, referer=referer, subtitles=subtitles)
113
113
  self.media_handler.title = name
114
+ if self.name not in self.media_handler.title:
115
+ self.media_handler.title = f"{self.name} | {self.media_handler.title}"
116
+
114
117
  self.media_handler.play_media(extract_result)
@@ -82,7 +82,7 @@ class SezonlukDizi(PluginBase):
82
82
  links = []
83
83
  for dil, label in [("1", "AltYazı"), ("0", "Dublaj")]:
84
84
  dil_istek = await self.oturum.post(
85
- url = f"{self.main_url}/ajax/dataAlternatif2.asp",
85
+ url = f"{self.main_url}/ajax/dataAlternatif22.asp",
86
86
  headers = {"X-Requested-With": "XMLHttpRequest"},
87
87
  data = {"bid": bid, "dil": dil},
88
88
  )
@@ -95,7 +95,7 @@ class SezonlukDizi(PluginBase):
95
95
  if dil_json.get("status") == "success":
96
96
  for veri in dil_json.get("data", []):
97
97
  veri_response = await self.oturum.post(
98
- url = f"{self.main_url}/ajax/dataEmbed.asp",
98
+ url = f"{self.main_url}/ajax/dataEmbed22.asp",
99
99
  headers = {"X-Requested-With": "XMLHttpRequest"},
100
100
  data = {"id": veri.get("id")},
101
101
  )
KekikStream/__init__.py CHANGED
@@ -127,6 +127,9 @@ class KekikStream:
127
127
  konsol.print(f"[yellow][!] {eklenti_adi} geçerli bir PluginBase değil, atlanıyor...[/yellow]")
128
128
  continue
129
129
 
130
+ if eklenti_adi in ["Shorten"]:
131
+ continue
132
+
130
133
  konsol.log(f"[yellow][~] {eklenti_adi:<19} aranıyor...[/]")
131
134
  try:
132
135
  sonuclar = await eklenti.search(sorgu)
@@ -208,6 +211,7 @@ class KekikStream:
208
211
  self.dizi = True
209
212
  await self.dizi_bolum_secimi(medya_bilgi)
210
213
  else:
214
+ self.dizi = False
211
215
  baglantilar = await self.suanki_eklenti.load_links(medya_bilgi.url)
212
216
  await self.baglanti_secenekleri_goster(baglantilar)
213
217
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: KekikStream
3
- Version: 1.0.0
3
+ Version: 1.0.2
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
@@ -1,4 +1,4 @@
1
- KekikStream/__init__.py,sha256=_mhsXdPnXnDu4AjIiwxoz6qjr4PP1qKOKpU__Gi1flg,14676
1
+ KekikStream/__init__.py,sha256=PwKHsbnKv6LBUtttQQPy1-mD_3RaCeNNDMLa1kz_TKA,14777
2
2
  KekikStream/__main__.py,sha256=B81dQoeGEb-T5Sycs3eNAmW7unvx0Mef0syCjs4nPds,137
3
3
  KekikStream/requirements.txt,sha256=QWCXrrmKodIm7mGtIz9cWr9sks-lmL_TilKMrruWJn0,77
4
4
  KekikStream/CLI/__init__.py,sha256=U6oLq_O7u5y2eHhBnmfhZNns_EqHHJXJmzl8jvZFUNY,230
@@ -8,7 +8,7 @@ KekikStream/Core/Extractor/ExtractorBase.py,sha256=ZyasO5m7iAsnh-mwhtlp-VXkZ4pIu
8
8
  KekikStream/Core/Extractor/ExtractorLoader.py,sha256=ecrfz9mYizlENCjbyfjdfnOrQorxQTF4ZFGhPpU6JHk,4193
9
9
  KekikStream/Core/Extractor/ExtractorManager.py,sha256=4L1H3jiTnf0kTq4W6uS7n95bBYHlKJ8_hh0og8z4erQ,1244
10
10
  KekikStream/Core/Extractor/ExtractorModels.py,sha256=huIcPQ5VIRfMx0LcL5SS1u4dldZbHjzHKEdSEtOPlc0,456
11
- KekikStream/Core/Media/MediaHandler.py,sha256=xq2Kwe7_2hyfS1EU17OvNKqcrKxHTTYW3L2aYxhYvvw,6319
11
+ KekikStream/Core/Media/MediaHandler.py,sha256=zyubfuXsrf6flZ1XC5C8OseZpSchtFnnbaUf_LRLBX0,6490
12
12
  KekikStream/Core/Media/MediaManager.py,sha256=9ItiUguOkk3wg3YY5uf3mrjfwLPCvggnP8QviX0uiuE,526
13
13
  KekikStream/Core/Plugin/PluginBase.py,sha256=KuR89bkrChPAct4-PMjxbK4i6busXMMFeZjv-x4F1CQ,2521
14
14
  KekikStream/Core/Plugin/PluginLoader.py,sha256=2UM3gNcEgd7k-FxG-JB5nTIS0K_clzvFtzGjMA_Sx7Q,3379
@@ -24,6 +24,7 @@ KekikStream/Extractors/HDStreamAble.py,sha256=66n5EvIdX_or5cdnlJ_Uqmzi50n4rl9c5V
24
24
  KekikStream/Extractors/Hotlinger.py,sha256=NFMRgUmb6BCrJfa7Hi0VarDNYvCeVknBWEk24FKBBa0,224
25
25
  KekikStream/Extractors/MailRu.py,sha256=lB3Xy912EaSEUw7Im65L5TwtIeM7OLFV1_9lan39g40,1308
26
26
  KekikStream/Extractors/MixPlayHD.py,sha256=M7Zxmpkazkj6ewgLWKKDeZDbBOCM9vkMDyIaVhaSPrY,1554
27
+ KekikStream/Extractors/MolyStream.py,sha256=Z3v21NQ43y8XqtA5SqacZaWnP9HeeGfFejMMk08XHGk,659
27
28
  KekikStream/Extractors/Odnoklassniki.py,sha256=B0A2krVVvzmpZBzIpxu40WB9AZ_zzH-Km2HTetrNvqQ,3593
28
29
  KekikStream/Extractors/OkRuHTTP.py,sha256=L-B0i_i_Vnm61GvUfd6cGIW-o_H4M-C7DO_cdw2rQPU,228
29
30
  KekikStream/Extractors/OkRuSSL.py,sha256=FHJ5XZ1dO5ED3mIku3e3vnq8K0slrcr0jqhaUnHmfVk,227
@@ -40,20 +41,20 @@ KekikStream/Extractors/TurboImgz.py,sha256=VXx9vZZRTdQiVNER0LcXm2nsv2OaXnxuPpslG
40
41
  KekikStream/Extractors/VidMoly.py,sha256=BKJgk60GomFYiLFsRQSR2sOYP105Aix5y5XLazBNWmw,3368
41
42
  KekikStream/Extractors/VidMoxy.py,sha256=_K6BA7Uo59DA3ty_tsayCUZjXmRoDBTghekVNXiuZ7g,1800
42
43
  KekikStream/Extractors/VideoSeyred.py,sha256=otyGi1zdY_JPrXJjoZjesCQDiOkxFdaWiXQ9mOmrygA,1780
43
- KekikStream/Plugins/DiziBox.py,sha256=i_73VNXk2eM7xTg-6a0Xk2Yts2c9grWbRVVHhxFgoic,5935
44
+ KekikStream/Plugins/DiziBox.py,sha256=3luzkJ0tQzdYc6qQCp_-OGKGmYZx5eWYaJJV5w5R6JM,6089
44
45
  KekikStream/Plugins/DiziYou.py,sha256=zvhdJzjGEHosS_kIqXCc3aRJPESsP-BZ6FzhokThCjs,5382
45
- KekikStream/Plugins/Dizilla.py,sha256=evWYvETw1c4RY0GB5P20cB_I_U7ZxzzvnG7RLNGJRPs,4258
46
+ KekikStream/Plugins/Dizilla.py,sha256=Ou2dtQ-I_kn5CUsoEsQKsl7ozKs-qYOSfESydiwfUD0,4243
46
47
  KekikStream/Plugins/FilmMakinesi.py,sha256=rz8TQeL41PJbeEmksgPHIhp6J-4vbSCBTeEH0ukExz4,2822
47
48
  KekikStream/Plugins/FullHDFilmizlesene.py,sha256=Fa0gRP_NoMfPC8HIKRxERjQVOv8Fyb-ayMJ2EooZ7BE,3080
48
49
  KekikStream/Plugins/JetFilmizle.py,sha256=Gu4Ums-88x7jNKAtKkdSXyMaOyLv0_Kb6jnomhAWhM0,3916
49
- KekikStream/Plugins/RecTV.py,sha256=7hxlt3Rvm1gV2lF6dFLOxiK_CjNng_7a02l0YkMuNZc,4886
50
- KekikStream/Plugins/SezonlukDizi.py,sha256=5BZVzQ2eQtymHxO0bzjA2ho4FFNahPFQly4hoHuH8lo,4441
50
+ KekikStream/Plugins/RecTV.py,sha256=hA7lG8iLFO-IXzYekAbLckpbqe5GheY4iYKohlMRN3Y,5024
51
+ KekikStream/Plugins/SezonlukDizi.py,sha256=VUyKAu2SlUCV4uTQfIr2BLLTus2-LOXPFF4rDHG1rs8,4444
51
52
  KekikStream/Plugins/Shorten.py,sha256=kDQGmj7qvfdDyDkU__QGjx-FoGSgCOPxcA3veM2BGPk,8858
52
53
  KekikStream/Plugins/SineWix.py,sha256=WxlGoE8GMWr7S7Htu_Bh_OP4qIav1igHLJ3GWzP8ttQ,4859
53
54
  KekikStream/Plugins/UgurFilm.py,sha256=yYXee5uxwNnPqFJZ6s6cRkmUyqS3Vv8x-iesPalc4j4,2930
54
- KekikStream-1.0.0.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
55
- KekikStream-1.0.0.dist-info/METADATA,sha256=A6Ujb9uRiGlLhTG9icGMhoG5Fx0b89g3W91wlOLjmBQ,4226
56
- KekikStream-1.0.0.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
57
- KekikStream-1.0.0.dist-info/entry_points.txt,sha256=dFwdiTx8djyehI0Gsz-rZwjAfZzUzoBSrmzRu9ubjJc,50
58
- KekikStream-1.0.0.dist-info/top_level.txt,sha256=DNmGJDXl27Drdfobrak8KYLmocW_uznVYFJOzcjUgmY,12
59
- KekikStream-1.0.0.dist-info/RECORD,,
55
+ KekikStream-1.0.2.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
56
+ KekikStream-1.0.2.dist-info/METADATA,sha256=EgrKBWcxV81NeCQNVNsc1IXBi6zfHPLyJiZCRc40SRg,4226
57
+ KekikStream-1.0.2.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
58
+ KekikStream-1.0.2.dist-info/entry_points.txt,sha256=dFwdiTx8djyehI0Gsz-rZwjAfZzUzoBSrmzRu9ubjJc,50
59
+ KekikStream-1.0.2.dist-info/top_level.txt,sha256=DNmGJDXl27Drdfobrak8KYLmocW_uznVYFJOzcjUgmY,12
60
+ KekikStream-1.0.2.dist-info/RECORD,,