KekikStream 1.2.9__py3-none-any.whl → 1.3.0__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.
@@ -1,5 +1,7 @@
1
1
  # Bu araç @keyiflerolsun tarafından | @KekikAkademi için yazılmıştır.
2
2
 
3
+ from Kekik.cache import kekik_cache
4
+
3
5
  from .UI.UIManager import UIManager
4
6
 
5
7
  from .Plugin.PluginManager import PluginManager
@@ -1,6 +1,6 @@
1
1
  # Bu araç @keyiflerolsun tarafından | @KekikAkademi için yazılmıştır.
2
2
 
3
- from KekikStream.Core import PluginBase, MainPageResult, SearchResult, SeriesInfo, Episode
3
+ from KekikStream.Core import kekik_cache, PluginBase, MainPageResult, SearchResult, SeriesInfo, Episode
4
4
  from Kekik.Sifreleme import CryptoJS
5
5
  from parsel import Selector
6
6
  import re, urllib.parse, base64, contextlib, asyncio
@@ -40,14 +40,10 @@ class DiziBox(PluginBase):
40
40
  f"{main_url}/dizi-arsivi/page/SAYFA/?tur[0]=yarisma&yil&imdb" : "Yarışma"
41
41
  }
42
42
 
43
+ @kekik_cache(ttl=60*60)
43
44
  async def get_main_page(self, page: int, url: str, category: str) -> list[MainPageResult]:
44
45
  istek = await self.httpx.get(
45
- url = f"{url.replace('SAYFA', str(page))}",
46
- cookies = {
47
- "LockUser" : "true",
48
- "isTrustedUser" : "true",
49
- "dbxu" : "1722403730363"
50
- },
46
+ url = f"{url.replace('SAYFA', str(page))}",
51
47
  follow_redirects = True
52
48
  )
53
49
  secici = Selector(istek.text)
@@ -62,6 +58,7 @@ class DiziBox(PluginBase):
62
58
  for veri in secici.css("article.detailed-article")
63
59
  ]
64
60
 
61
+ @kekik_cache(ttl=60*60)
65
62
  async def search(self, query: str) -> list[SearchResult]:
66
63
  self.httpx.cookies.update({
67
64
  "LockUser" : "true",
@@ -80,6 +77,7 @@ class DiziBox(PluginBase):
80
77
  for item in secici.css("article.detailed-article")
81
78
  ]
82
79
 
80
+ @kekik_cache(ttl=60*60)
83
81
  async def load_item(self, url: str) -> SeriesInfo:
84
82
  istek = await self.httpx.get(url)
85
83
  secici = Selector(istek.text)
@@ -126,6 +124,7 @@ class DiziBox(PluginBase):
126
124
  actors = actors,
127
125
  )
128
126
 
127
+ @kekik_cache(ttl=60*60)
129
128
  async def _iframe_decode(self, name:str, iframe_link:str, referer:str) -> list[str]:
130
129
  results = []
131
130
 
@@ -172,6 +171,7 @@ class DiziBox(PluginBase):
172
171
 
173
172
  return results
174
173
 
174
+ @kekik_cache(ttl=15*60)
175
175
  async def load_links(self, url: str) -> list[str]:
176
176
  istek = await self.httpx.get(url)
177
177
  secici = Selector(istek.text)
@@ -1,6 +1,6 @@
1
1
  # Bu araç @keyiflerolsun tarafından | @KekikAkademi için yazılmıştır.
2
2
 
3
- from KekikStream.Core import PluginBase, SearchResult, SeriesInfo, Episode, Subtitle, ExtractResult
3
+ from KekikStream.Core import kekik_cache, PluginBase, SearchResult, SeriesInfo, Episode, Subtitle, ExtractResult
4
4
  from parsel import Selector
5
5
  import re
6
6
 
@@ -8,6 +8,7 @@ class DiziYou(PluginBase):
8
8
  name = "DiziYou"
9
9
  main_url = "https://www.diziyou1.com"
10
10
 
11
+ @kekik_cache(ttl=60*60)
11
12
  async def search(self, query: str) -> list[SearchResult]:
12
13
  istek = await self.httpx.get(f"{self.main_url}/?s={query}")
13
14
  secici = Selector(istek.text)
@@ -21,6 +22,7 @@ class DiziYou(PluginBase):
21
22
  for afis in secici.css("div.incontent div#list-series")
22
23
  ]
23
24
 
25
+ @kekik_cache(ttl=60*60)
24
26
  async def load_item(self, url: str) -> SeriesInfo:
25
27
  istek = await self.httpx.get(url)
26
28
  secici = Selector(istek.text)
@@ -67,6 +69,7 @@ class DiziYou(PluginBase):
67
69
  actors = actors
68
70
  )
69
71
 
72
+ @kekik_cache(ttl=15*60)
70
73
  async def load_links(self, url: str) -> list[str]:
71
74
  istek = await self.httpx.get(url)
72
75
  secici = Selector(istek.text)
@@ -1,6 +1,6 @@
1
1
  # Bu araç @keyiflerolsun tarafından | @KekikAkademi için yazılmıştır.
2
2
 
3
- from KekikStream.Core import PluginBase, MainPageResult, SearchResult, SeriesInfo, Episode
3
+ from KekikStream.Core import kekik_cache, PluginBase, MainPageResult, SearchResult, SeriesInfo, Episode
4
4
  from parsel import Selector
5
5
  from json import loads
6
6
  from urllib.parse import urlparse, urlunparse
@@ -22,6 +22,7 @@ class Dizilla(PluginBase):
22
22
  f"{main_url}/dizi-turu/komedi" : "Komedi"
23
23
  }
24
24
 
25
+ @kekik_cache(ttl=60*60)
25
26
  async def get_main_page(self, page: int, url: str, category: str) -> list[MainPageResult]:
26
27
  istek = await self.httpx.get(url)
27
28
  secici = Selector(istek.text)
@@ -64,6 +65,7 @@ class Dizilla(PluginBase):
64
65
 
65
66
  return ana_sayfa
66
67
 
68
+ @kekik_cache(ttl=60*60)
67
69
  async def search(self, query: str) -> list[SearchResult]:
68
70
  ilk_istek = await self.httpx.get(self.main_url)
69
71
  ilk_secici = Selector(ilk_istek.text)
@@ -99,6 +101,7 @@ class Dizilla(PluginBase):
99
101
  for veri in arama_veri
100
102
  ]
101
103
 
104
+ @kekik_cache(ttl=60*60)
102
105
  async def url_base_degis(self, eski_url:str, yeni_base:str) -> str:
103
106
  parsed_url = urlparse(eski_url)
104
107
  parsed_yeni_base = urlparse(yeni_base)
@@ -109,6 +112,7 @@ class Dizilla(PluginBase):
109
112
 
110
113
  return urlunparse(yeni_url)
111
114
 
115
+ @kekik_cache(ttl=60*60)
112
116
  async def load_item(self, url: str) -> SeriesInfo:
113
117
  istek = await self.httpx.get(url)
114
118
  secici = Selector(istek.text)
@@ -148,6 +152,7 @@ class Dizilla(PluginBase):
148
152
  actors = actors
149
153
  )
150
154
 
155
+ @kekik_cache(ttl=15*60)
151
156
  async def load_links(self, url: str) -> list[str]:
152
157
  istek = await self.httpx.get(url)
153
158
  secici = Selector(istek.text)
@@ -1,12 +1,13 @@
1
1
  # Bu araç @keyiflerolsun tarafından | @KekikAkademi için yazılmıştır.
2
2
 
3
- from KekikStream.Core import PluginBase, SearchResult, MovieInfo
3
+ from KekikStream.Core import kekik_cache, PluginBase, SearchResult, MovieInfo
4
4
  from parsel import Selector
5
5
 
6
6
  class FilmMakinesi(PluginBase):
7
7
  name = "FilmMakinesi"
8
8
  main_url = "https://filmmakinesi.de"
9
9
 
10
+ @kekik_cache(ttl=60*60)
10
11
  async def search(self, query: str) -> list[SearchResult]:
11
12
  istek = await self.httpx.get(f"{self.main_url}/?s={query}")
12
13
  secici = Selector(istek.text)
@@ -28,6 +29,7 @@ class FilmMakinesi(PluginBase):
28
29
 
29
30
  return results
30
31
 
32
+ @kekik_cache(ttl=60*60)
31
33
  async def load_item(self, url: str) -> MovieInfo:
32
34
  istek = await self.httpx.get(url)
33
35
  secici = Selector(istek.text)
@@ -57,6 +59,7 @@ class FilmMakinesi(PluginBase):
57
59
  duration = duration_minutes
58
60
  )
59
61
 
62
+ @kekik_cache(ttl=15*60)
60
63
  async def load_links(self, url: str) -> list[str]:
61
64
  istek = await self.httpx.get(url)
62
65
  secici = Selector(istek.text)
@@ -1,7 +1,6 @@
1
1
  # Bu araç @keyiflerolsun tarafından | @KekikAkademi için yazılmıştır.
2
2
 
3
- from KekikStream.CLI import konsol
4
- from KekikStream.Core import PluginBase, SearchResult, MovieInfo
3
+ from KekikStream.Core import kekik_cache, PluginBase, SearchResult, MovieInfo
5
4
  from parsel import Selector
6
5
  from Kekik.Sifreleme import StringCodec
7
6
  import json, re
@@ -10,6 +9,7 @@ class FullHDFilmizlesene(PluginBase):
10
9
  name = "FullHDFilmizlesene"
11
10
  main_url = "https://www.fullhdfilmizlesene.de"
12
11
 
12
+ @kekik_cache(ttl=60*60)
13
13
  async def search(self, query: str) -> list[SearchResult]:
14
14
  istek = await self.httpx.get(f"{self.main_url}/arama/{query}")
15
15
  secici = Selector(istek.text)
@@ -31,6 +31,7 @@ class FullHDFilmizlesene(PluginBase):
31
31
 
32
32
  return results
33
33
 
34
+ @kekik_cache(ttl=60*60)
34
35
  async def load_item(self, url: str) -> MovieInfo:
35
36
  istek = await self.httpx.get(url)
36
37
  secici = Selector(istek.text)
@@ -56,6 +57,7 @@ class FullHDFilmizlesene(PluginBase):
56
57
  duration = duration
57
58
  )
58
59
 
60
+ @kekik_cache(ttl=15*60)
59
61
  async def load_links(self, url: str) -> list[str]:
60
62
  istek = await self.httpx.get(url)
61
63
  secici = Selector(istek.text)
@@ -1,6 +1,6 @@
1
1
  # Bu araç @keyiflerolsun tarafından | @KekikAkademi için yazılmıştır.
2
2
 
3
- from KekikStream.Core import PluginBase, SearchResult, MovieInfo, ExtractResult, Subtitle
3
+ from KekikStream.Core import kekik_cache, PluginBase, SearchResult, MovieInfo, ExtractResult, Subtitle
4
4
  from parsel import Selector
5
5
  import random, string
6
6
 
@@ -8,6 +8,7 @@ class HDFilmCehennemi(PluginBase):
8
8
  name = "HDFilmCehennemi"
9
9
  main_url = "https://www.hdfilmcehennemi.nl"
10
10
 
11
+ @kekik_cache(ttl=60*60)
11
12
  async def search(self, query: str) -> list[SearchResult]:
12
13
  istek = await self.httpx.get(
13
14
  url = f"{self.main_url}/search?q={query}",
@@ -36,6 +37,7 @@ class HDFilmCehennemi(PluginBase):
36
37
 
37
38
  return results
38
39
 
40
+ @kekik_cache(ttl=60*60)
39
41
  async def load_item(self, url: str) -> MovieInfo:
40
42
  istek = await self.httpx.get(url, headers = {"Referer": f"{self.main_url}/"})
41
43
  secici = Selector(istek.text)
@@ -70,6 +72,7 @@ class HDFilmCehennemi(PluginBase):
70
72
  def generate_random_cookie(self):
71
73
  return "".join(random.choices(string.ascii_letters + string.digits, k=16))
72
74
 
75
+ @kekik_cache(ttl=15*60)
73
76
  async def load_links(self, url: str) -> list[str]:
74
77
  self._data.clear()
75
78
 
@@ -1,12 +1,13 @@
1
1
  # Bu araç @keyiflerolsun tarafından | @KekikAkademi için yazılmıştır.
2
2
 
3
- from KekikStream.Core import PluginBase, SearchResult, MovieInfo
3
+ from KekikStream.Core import kekik_cache, PluginBase, SearchResult, MovieInfo
4
4
  from parsel import Selector
5
5
 
6
6
  class JetFilmizle(PluginBase):
7
7
  name = "JetFilmizle"
8
8
  main_url = "https://jetfilmizle.io"
9
9
 
10
+ @kekik_cache(ttl=60*60)
10
11
  async def search(self, query: str) -> list[SearchResult]:
11
12
  istek = await self.httpx.post(
12
13
  url = f"{self.main_url}/filmara.php",
@@ -32,6 +33,7 @@ class JetFilmizle(PluginBase):
32
33
 
33
34
  return results
34
35
 
36
+ @kekik_cache(ttl=60*60)
35
37
  async def load_item(self, url: str) -> MovieInfo:
36
38
  istek = await self.httpx.get(url)
37
39
  secici = Selector(istek.text)
@@ -55,6 +57,7 @@ class JetFilmizle(PluginBase):
55
57
  actors = actors
56
58
  )
57
59
 
60
+ @kekik_cache(ttl=15*60)
58
61
  async def load_links(self, url: str) -> list[str]:
59
62
  istek = await self.httpx.get(url)
60
63
  secici = Selector(istek.text)
@@ -1,12 +1,10 @@
1
1
  # Bu araç @keyiflerolsun tarafından | @KekikAkademi için yazılmıştır.
2
2
 
3
- from KekikStream.CLI import konsol
4
- from KekikStream.Core import PluginBase, SearchResult, MovieInfo, Episode, SeriesInfo, ExtractResult, Subtitle
3
+ from KekikStream.Core import kekik_cache, PluginBase, SearchResult, MovieInfo, Episode, SeriesInfo, ExtractResult, Subtitle
5
4
  from httpx import AsyncClient
6
5
  from json import dumps, loads
7
6
  import re
8
7
 
9
-
10
8
  class RecTV(PluginBase):
11
9
  name = "RecTV"
12
10
  main_url = "https://a.prectv35.sbs"
@@ -15,6 +13,7 @@ class RecTV(PluginBase):
15
13
  http2 = AsyncClient(http2=True)
16
14
  http2.headers.update({"user-agent": "okhttp/4.12.0"})
17
15
 
16
+ kekik_cache(ttl=60*60)
18
17
  async def search(self, query: str) -> list[SearchResult]:
19
18
  self.media_handler.headers.update({"User-Agent": "googleusercontent"})
20
19
 
@@ -36,6 +35,7 @@ class RecTV(PluginBase):
36
35
  for veri in tum_veri
37
36
  ]
38
37
 
38
+ kekik_cache(ttl=60*60)
39
39
  async def load_item(self, url: str) -> MovieInfo:
40
40
  veri = loads(url)
41
41
 
@@ -86,6 +86,7 @@ class RecTV(PluginBase):
86
86
  actors = []
87
87
  )
88
88
 
89
+ kekik_cache(ttl=15*60)
89
90
  async def load_links(self, url: str) -> list[str]:
90
91
  try:
91
92
  veri = loads(url)
@@ -1,12 +1,13 @@
1
1
  # Bu araç @keyiflerolsun tarafından | @KekikAkademi için yazılmıştır.
2
2
 
3
- from KekikStream.Core import PluginBase, SearchResult, SeriesInfo, Episode
3
+ from KekikStream.Core import kekik_cache, PluginBase, SearchResult, SeriesInfo, Episode
4
4
  from parsel import Selector
5
5
 
6
6
  class SezonlukDizi(PluginBase):
7
7
  name = "SezonlukDizi"
8
8
  main_url = "https://sezonlukdizi6.com"
9
9
 
10
+ kekik_cache(ttl=60*60)
10
11
  async def search(self, query: str) -> list[SearchResult]:
11
12
  istek = await self.httpx.get(f"{self.main_url}/diziler.asp?adi={query}")
12
13
  secici = Selector(istek.text)
@@ -20,6 +21,7 @@ class SezonlukDizi(PluginBase):
20
21
  for afis in secici.css("div.afis a.column")
21
22
  ]
22
23
 
24
+ kekik_cache(ttl=60*60)
23
25
  async def load_item(self, url: str) -> SeriesInfo:
24
26
  istek = await self.httpx.get(url)
25
27
  secici = Selector(istek.text)
@@ -71,6 +73,7 @@ class SezonlukDizi(PluginBase):
71
73
  actors = actors
72
74
  )
73
75
 
76
+ kekik_cache(ttl=15*60)
74
77
  async def load_links(self, url: str) -> list[str]:
75
78
  istek = await self.httpx.get(url)
76
79
  secici = Selector(istek.text)
@@ -1,7 +1,6 @@
1
1
  # Bu araç @keyiflerolsun tarafından | @KekikAkademi için yazılmıştır.
2
2
 
3
- from KekikStream.Core import PluginBase, SearchResult, MovieInfo, Episode, SeriesInfo, ExtractResult, Subtitle
4
-
3
+ from KekikStream.Core import kekik_cache, PluginBase, SearchResult, MovieInfo, Episode, SeriesInfo, ExtractResult, Subtitle
5
4
  from Kekik.unicode_tr import unicode_tr
6
5
  import re, json, base64
7
6
 
@@ -156,6 +155,7 @@ class Shorten(PluginBase):
156
155
 
157
156
  return veriler["data"]
158
157
 
158
+ kekik_cache(ttl=60*60)
159
159
  async def search(self, query: str) -> list[SearchResult]:
160
160
  veriler = await self.raw_diziler()
161
161
 
@@ -168,6 +168,7 @@ class Shorten(PluginBase):
168
168
  for veri in veriler
169
169
  ]
170
170
 
171
+ kekik_cache(ttl=60*60)
171
172
  async def load_item(self, url: str) -> MovieInfo:
172
173
  veri = await self.bolumler(url)
173
174
 
@@ -204,6 +205,7 @@ class Shorten(PluginBase):
204
205
  episodes = episodes,
205
206
  )
206
207
 
208
+ kekik_cache(ttl=15*60)
207
209
  async def load_links(self, url: str) -> list[str]:
208
210
  return [url]
209
211
 
@@ -1,6 +1,6 @@
1
1
  # Bu araç @keyiflerolsun tarafından | @KekikAkademi için yazılmıştır.
2
2
 
3
- from KekikStream.Core import PluginBase, MainPageResult, SearchResult, MovieInfo, Episode, SeriesInfo, ExtractResult, Subtitle
3
+ from KekikStream.Core import kekik_cache, PluginBase, MainPageResult, SearchResult, MovieInfo, Episode, SeriesInfo, ExtractResult, Subtitle
4
4
 
5
5
  class SineWix(PluginBase):
6
6
  name = "SineWix"
@@ -34,6 +34,7 @@ class SineWix(PluginBase):
34
34
  f"{main_url}/sinewix/movies/36" : "Tarih",
35
35
  }
36
36
 
37
+ kekik_cache(ttl=60*60)
37
38
  async def get_main_page(self, page: int, url: str, category: str) -> list[MainPageResult]:
38
39
  istek = await self.httpx.get(f"{url}/{page}")
39
40
  veriler = istek.json()
@@ -48,6 +49,7 @@ class SineWix(PluginBase):
48
49
  for veri in veriler.get("data")
49
50
  ]
50
51
 
52
+ kekik_cache(ttl=60*60)
51
53
  async def search(self, query: str) -> list[SearchResult]:
52
54
  istek = await self.httpx.get(f"{self.main_url}/sinewix/search/{query}")
53
55
 
@@ -60,6 +62,7 @@ class SineWix(PluginBase):
60
62
  for veri in istek.json().get("search")
61
63
  ]
62
64
 
65
+ kekik_cache(ttl=60*60)
63
66
  async def load_item(self, url: str) -> MovieInfo | SeriesInfo:
64
67
  item_type = url.split("?type=")[-1].split("&id=")[0]
65
68
  item_id = url.split("&id=")[-1]
@@ -122,6 +125,7 @@ class SineWix(PluginBase):
122
125
  episodes = episodes,
123
126
  )
124
127
 
128
+ kekik_cache(ttl=15*60)
125
129
  async def load_links(self, url: str) -> list[str]:
126
130
  if not url.startswith(self.main_url):
127
131
  return [url]
@@ -1,12 +1,13 @@
1
1
  # Bu araç @keyiflerolsun tarafından | @KekikAkademi için yazılmıştır.
2
2
 
3
- from KekikStream.Core import PluginBase, SearchResult, MovieInfo
3
+ from KekikStream.Core import kekik_cache, PluginBase, SearchResult, MovieInfo
4
4
  from parsel import Selector
5
5
 
6
6
  class UgurFilm(PluginBase):
7
7
  name = "UgurFilm"
8
8
  main_url = "https://ugurfilm8.com"
9
9
 
10
+ kekik_cache(ttl=60*60)
10
11
  async def search(self, query: str) -> list[SearchResult]:
11
12
  istek = await self.httpx.get(f"{self.main_url}/?s={query}")
12
13
  secici = Selector(istek.text)
@@ -28,6 +29,7 @@ class UgurFilm(PluginBase):
28
29
 
29
30
  return results
30
31
 
32
+ kekik_cache(ttl=60*60)
31
33
  async def load_item(self, url: str) -> MovieInfo:
32
34
  istek = await self.httpx.get(url)
33
35
  secici = Selector(istek.text)
@@ -49,6 +51,7 @@ class UgurFilm(PluginBase):
49
51
  actors = actors,
50
52
  )
51
53
 
54
+ kekik_cache(ttl=15*60)
52
55
  async def load_links(self, url: str) -> list[str]:
53
56
  istek = await self.httpx.get(url)
54
57
  secici = Selector(istek.text)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: KekikStream
3
- Version: 1.2.9
3
+ Version: 1.3.0
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
@@ -3,7 +3,7 @@ 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
5
5
  KekikStream/CLI/pypi_kontrol.py,sha256=MchatOwCWCpFBtgt09yag9Rjal9XFyh2W_oVs2p7SNg,1518
6
- KekikStream/Core/__init__.py,sha256=4ykq-DBlbbfjGAd5m2AZfuljTLBFYkI8DPLxV03AAcA,673
6
+ KekikStream/Core/__init__.py,sha256=ar2MZQF83ryfLfydEXcfjdwNe4Too_HT6bP-D_4TopA,710
7
7
  KekikStream/Core/Extractor/ExtractorBase.py,sha256=7dmYh5e1Za5N_pLJrTZRuwFh-CqwGc0YJOBWf5dirjc,1724
8
8
  KekikStream/Core/Extractor/ExtractorLoader.py,sha256=7uxUXTAuF65KKkmbI6iRiCiUhx-IqrronB7ixhchcTU,4289
9
9
  KekikStream/Core/Extractor/ExtractorManager.py,sha256=4L1H3jiTnf0kTq4W6uS7n95bBYHlKJ8_hh0og8z4erQ,1244
@@ -42,21 +42,21 @@ KekikStream/Extractors/VidMoly.py,sha256=O6F_82E-LeFVOgSw-ot91B1ZP8pqqt1jZ5pmkwk
42
42
  KekikStream/Extractors/VidMolyMe.py,sha256=ogLiFUJVqFbhtzQrZ1gSB9me85DiHvntjWtSvidYVS8,218
43
43
  KekikStream/Extractors/VidMoxy.py,sha256=T1iqfyOasRxoepmuWAmXeVW6E7M1O18KG3264KUSzc0,1798
44
44
  KekikStream/Extractors/VideoSeyred.py,sha256=M6QPZ_isX9vM_7LPo-2I_8Cf1vB9awHw8vvzBODtoiQ,1977
45
- KekikStream/Plugins/DiziBox.py,sha256=9sz8j49y7PugiTVXkBqoBTJJpfRePxL_7UVGMIVDu14,9337
46
- KekikStream/Plugins/DiziYou.py,sha256=1e-NTWgg-yP2lDFzYLevKNMX8Da5pScKyIWRiO2fMb0,5666
47
- KekikStream/Plugins/Dizilla.py,sha256=s-qhYUzpRazDC-ENUs_acsGhq292LOShZgS24I35cWY,6746
48
- KekikStream/Plugins/FilmMakinesi.py,sha256=nDmUk-yVlP_F8r7rYtOGq5zMJrdZCCC_KO5K-edJsKA,2819
49
- KekikStream/Plugins/FullHDFilmizlesene.py,sha256=cOl7HVl4pNgHX8IS7ZkAJE6KFiYOQw4MppaAwBTwQlo,3077
50
- KekikStream/Plugins/HDFilmCehennemi.py,sha256=xpMwoCqG-HwtAdP3j4DsudqjUuEuAbxZp8fwXWZNn5o,6670
51
- KekikStream/Plugins/JetFilmizle.py,sha256=vXt0AIs1XMqxIlD_BnoTxQse2fzVROpdplQCtbFRBQw,3911
52
- KekikStream/Plugins/RecTV.py,sha256=TYpV6T7U8TkkHYB3XK0xqar0pKlULXdztvK4TDc9734,5106
53
- KekikStream/Plugins/SezonlukDizi.py,sha256=hKzO0Y0ypHEutmUM9c91x8e8vzRQ_zxpnwY0rhswxxI,4437
54
- KekikStream/Plugins/Shorten.py,sha256=arakUY8ampyA408MYzikPp0VSYUvI8scPEkuZefEnyE,8852
55
- KekikStream/Plugins/SineWix.py,sha256=xlCgr4wFnEZcE2LQKka5tolq_3p326s25ahyTMuCShU,7020
56
- KekikStream/Plugins/UgurFilm.py,sha256=C9ZIUNBJJfBwgeS5-b7o-Dn07M8aXiNrNzutH6biTXw,2925
57
- kekikstream-1.2.9.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
58
- kekikstream-1.2.9.dist-info/METADATA,sha256=DNB3uWIDtgR1iEamfR-SDYkcJEi9CO2NEvuHIFyLjAM,4508
59
- kekikstream-1.2.9.dist-info/WHEEL,sha256=nn6H5-ilmfVryoAQl3ZQ2l8SH5imPWFpm1A5FgEuFV4,91
60
- kekikstream-1.2.9.dist-info/entry_points.txt,sha256=dFwdiTx8djyehI0Gsz-rZwjAfZzUzoBSrmzRu9ubjJc,50
61
- kekikstream-1.2.9.dist-info/top_level.txt,sha256=DNmGJDXl27Drdfobrak8KYLmocW_uznVYFJOzcjUgmY,12
62
- kekikstream-1.2.9.dist-info/RECORD,,
45
+ KekikStream/Plugins/DiziBox.py,sha256=Vk7ujbMTORimFNXA7BTZkQnXs-6WBfI7iIJxFYRJaH0,9326
46
+ KekikStream/Plugins/DiziYou.py,sha256=WL4IJqX7fwy5wiBo2fG0j4w60DhSfj0-_v0xXttcJBQ,5763
47
+ KekikStream/Plugins/Dizilla.py,sha256=E3HehhcnZBDVJzroRa7jlFzj3ixdx9-LT7YnWKmcX3Q,6899
48
+ KekikStream/Plugins/FilmMakinesi.py,sha256=aViX27rzJ6VJEz8QpIUrCppgtHjSszY1z3J3hLN6f_U,2916
49
+ KekikStream/Plugins/FullHDFilmizlesene.py,sha256=cmQ6t56OQi9DrQOYW2CDCnRSoW-utEHMqLiB1Fskod0,3138
50
+ KekikStream/Plugins/HDFilmCehennemi.py,sha256=I932zIgfJeqcD64Lb2742n24JF84aQ7To-WVDtn5fnE,6767
51
+ KekikStream/Plugins/JetFilmizle.py,sha256=2gXx55v3e46pcn_rNXgvLqIOe7Bg0FcZJ_UHznBfC5M,4008
52
+ KekikStream/Plugins/RecTV.py,sha256=Ff0-YrrzkiBvKo6FelMIX5vtJw22WvXmZpiKyboX7Kg,5163
53
+ KekikStream/Plugins/SezonlukDizi.py,sha256=fNVVKYIDiZnAYNT84sEp3PuPJwn6Az12UjiCOSiFjW0,4531
54
+ KekikStream/Plugins/Shorten.py,sha256=ei3lDfGWX-pAWxASxeusKZWNHlYe-a4uNKUMo69wemk,8945
55
+ KekikStream/Plugins/SineWix.py,sha256=XbuV8PxScbx87GuLkgHul-AdBKMDA-nCoAxr4pb2PNc,7141
56
+ KekikStream/Plugins/UgurFilm.py,sha256=xLxUI8nx9xH18wB9dhSWEvLGdxuonRkf75BnjIOkfPY,3019
57
+ kekikstream-1.3.0.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
58
+ kekikstream-1.3.0.dist-info/METADATA,sha256=7b_t9V4v6eq3Vg5GGTh5hwPzi4GplkAB4bjeVQpWe3w,4508
59
+ kekikstream-1.3.0.dist-info/WHEEL,sha256=jB7zZ3N9hIM9adW7qlTAyycLYW9npaWKLRzaoVcLKcM,91
60
+ kekikstream-1.3.0.dist-info/entry_points.txt,sha256=dFwdiTx8djyehI0Gsz-rZwjAfZzUzoBSrmzRu9ubjJc,50
61
+ kekikstream-1.3.0.dist-info/top_level.txt,sha256=DNmGJDXl27Drdfobrak8KYLmocW_uznVYFJOzcjUgmY,12
62
+ kekikstream-1.3.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.8.1)
2
+ Generator: setuptools (75.8.2)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5