KekikStream 1.4.6__tar.gz → 1.4.8__tar.gz

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.
Files changed (69) hide show
  1. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Core/Extractor/ExtractorModels.py +2 -2
  2. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/CloseLoad.py +1 -0
  3. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/ContentX.py +2 -0
  4. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/MailRu.py +2 -2
  5. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/MixPlayHD.py +1 -0
  6. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/Odnoklassniki.py +1 -0
  7. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/PeaceMakerst.py +1 -0
  8. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/PixelDrain.py +1 -0
  9. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/RapidVid.py +1 -0
  10. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/SibNet.py +1 -0
  11. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/Sobreatsesuyp.py +1 -0
  12. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/TRsTX.py +1 -0
  13. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/TauVideo.py +1 -0
  14. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/TurboImgz.py +1 -0
  15. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/VidMoly.py +1 -0
  16. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/VidMoxy.py +1 -0
  17. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/VideoSeyred.py +1 -0
  18. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Plugins/DiziYou.py +3 -2
  19. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Plugins/HDFilmCehennemi.py +4 -2
  20. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Plugins/RecTV.py +6 -4
  21. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Plugins/Shorten.py +1 -0
  22. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Plugins/SineWix.py +4 -1
  23. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream.egg-info/PKG-INFO +1 -1
  24. {kekikstream-1.4.6 → kekikstream-1.4.8}/PKG-INFO +1 -1
  25. {kekikstream-1.4.6 → kekikstream-1.4.8}/setup.py +1 -1
  26. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/CLI/__init__.py +0 -0
  27. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/CLI/pypi_kontrol.py +0 -0
  28. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Core/Extractor/ExtractorBase.py +0 -0
  29. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Core/Extractor/ExtractorLoader.py +0 -0
  30. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Core/Extractor/ExtractorManager.py +0 -0
  31. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Core/Media/MediaHandler.py +0 -0
  32. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Core/Media/MediaManager.py +0 -0
  33. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Core/Plugin/PluginBase.py +0 -0
  34. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Core/Plugin/PluginLoader.py +0 -0
  35. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Core/Plugin/PluginManager.py +0 -0
  36. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Core/Plugin/PluginModels.py +0 -0
  37. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Core/UI/UIManager.py +0 -0
  38. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Core/__init__.py +0 -0
  39. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/FourCX.py +0 -0
  40. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/FourPichive.py +0 -0
  41. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/FourPlayRu.py +0 -0
  42. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/HDStreamAble.py +0 -0
  43. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/Hotlinger.py +0 -0
  44. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/MolyStream.py +0 -0
  45. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/OkRuHTTP.py +0 -0
  46. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/OkRuSSL.py +0 -0
  47. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/Pichive.py +0 -0
  48. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/PlayRu.py +0 -0
  49. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Extractors/VidMolyMe.py +0 -0
  50. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Helpers/Unpack.py +0 -0
  51. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Plugins/DiziBox.py +0 -0
  52. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Plugins/Dizilla.py +0 -0
  53. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Plugins/FilmMakinesi.py +0 -0
  54. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Plugins/FullHDFilmizlesene.py +0 -0
  55. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Plugins/JetFilmizle.py +0 -0
  56. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Plugins/SezonlukDizi.py +0 -0
  57. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/Plugins/UgurFilm.py +0 -0
  58. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/__init__.py +0 -0
  59. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/__main__.py +0 -0
  60. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream/requirements.txt +0 -0
  61. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream.egg-info/SOURCES.txt +0 -0
  62. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream.egg-info/dependency_links.txt +0 -0
  63. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream.egg-info/entry_points.txt +0 -0
  64. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream.egg-info/requires.txt +0 -0
  65. {kekikstream-1.4.6 → kekikstream-1.4.8}/KekikStream.egg-info/top_level.txt +0 -0
  66. {kekikstream-1.4.6 → kekikstream-1.4.8}/LICENSE +0 -0
  67. {kekikstream-1.4.6 → kekikstream-1.4.8}/MANIFEST.in +0 -0
  68. {kekikstream-1.4.6 → kekikstream-1.4.8}/README.md +0 -0
  69. {kekikstream-1.4.6 → kekikstream-1.4.8}/setup.cfg +0 -0
@@ -15,5 +15,5 @@ class ExtractResult(BaseModel):
15
15
  name : str
16
16
  url : str
17
17
  referer : str
18
- subtitles : List[Subtitle] = []
19
- headers : Optional[dict] = {}
18
+ headers : Optional[dict] = {}
19
+ subtitles : List[Subtitle] = []
@@ -42,5 +42,6 @@ class CloseLoadExtractor(ExtractorBase):
42
42
  name = self.name,
43
43
  url = m3u_link,
44
44
  referer = self.main_url,
45
+ headers = {},
45
46
  subtitles = []
46
47
  )
@@ -53,6 +53,7 @@ class ContentX(ExtractorBase):
53
53
  name = self.name,
54
54
  url = m3u_link,
55
55
  referer = url,
56
+ headers = {},
56
57
  subtitles = subtitles
57
58
  )
58
59
  ]
@@ -73,6 +74,7 @@ class ContentX(ExtractorBase):
73
74
  name = f"{self.name} Türkçe Dublaj",
74
75
  url = dublaj_link,
75
76
  referer = url,
77
+ headers = {},
76
78
  subtitles = []
77
79
  )
78
80
  )
@@ -35,6 +35,6 @@ class MailRuExtractor(ExtractorBase):
35
35
  name = self.name,
36
36
  url = video_url,
37
37
  referer = self.main_url,
38
- subtitles = [],
39
- headers = {"Cookie": f"video_key={video_key}"}
38
+ headers = {"Cookie": f"video_key={video_key}"},
39
+ subtitles = []
40
40
  )
@@ -36,6 +36,7 @@ class MixPlayHD(ExtractorBase):
36
36
  name = self.name,
37
37
  url = video_url_match[1],
38
38
  referer = self.main_url,
39
+ headers = {},
39
40
  subtitles = []
40
41
  )
41
42
  else:
@@ -81,6 +81,7 @@ class Odnoklassniki(ExtractorBase):
81
81
  name = self.name,
82
82
  url = best_video,
83
83
  referer = self.main_url,
84
+ headers = {},
84
85
  subtitles = []
85
86
  )
86
87
 
@@ -53,5 +53,6 @@ class PeaceMakerst(ExtractorBase):
53
53
  name = self.name,
54
54
  url = m3u_link,
55
55
  referer = url,
56
+ headers = {},
56
57
  subtitles = []
57
58
  )
@@ -24,5 +24,6 @@ class PixelDrain(ExtractorBase):
24
24
  name = f"{self.name} - {pixel_id}",
25
25
  url = download_link,
26
26
  referer = referer_link,
27
+ headers = {},
27
28
  subtitles = []
28
29
  )
@@ -56,5 +56,6 @@ class RapidVid(ExtractorBase):
56
56
  name = self.name,
57
57
  url = decoded_url,
58
58
  referer = self.main_url,
59
+ headers = {},
59
60
  subtitles = subtitles
60
61
  )
@@ -25,5 +25,6 @@ class SibNet(ExtractorBase):
25
25
  name = self.name,
26
26
  url = m3u_link,
27
27
  referer = url,
28
+ headers = {},
28
29
  subtitles = []
29
30
  )
@@ -49,6 +49,7 @@ class Sobreatsesuyp(ExtractorBase):
49
49
  name = f"{self.name} - {title}",
50
50
  url = playlist_request.text,
51
51
  referer = self.main_url,
52
+ headers = {},
52
53
  subtitles = []
53
54
  )
54
55
  )
@@ -57,6 +57,7 @@ class TRsTX(ExtractorBase):
57
57
  name = f"{self.name} - {title}",
58
58
  url = video_data,
59
59
  referer = self.main_url,
60
+ headers = {},
60
61
  subtitles = []
61
62
  )
62
63
  )
@@ -26,6 +26,7 @@ class TauVideo(ExtractorBase):
26
26
  name = f"{self.name} - {video['label']}",
27
27
  url = video["url"],
28
28
  referer = referer or self.main_url,
29
+ headers = {},
29
30
  subtitles = []
30
31
  )
31
32
  for video in api_data["urls"]
@@ -19,6 +19,7 @@ class TurboImgz(ExtractorBase):
19
19
  name = self.name,
20
20
  url = video_match[1],
21
21
  referer = referer or self.main_url,
22
+ headers = {},
22
23
  subtitles = []
23
24
  )
24
25
  else:
@@ -79,6 +79,7 @@ class VidMoly(ExtractorBase):
79
79
  name = self.name,
80
80
  url = video_url,
81
81
  referer = self.main_url,
82
+ headers = {},
82
83
  subtitles = subtitles
83
84
  )
84
85
 
@@ -46,5 +46,6 @@ class VidMoxy(ExtractorBase):
46
46
  name = self.name,
47
47
  url = m3u_link,
48
48
  referer = self.main_url,
49
+ headers = {},
49
50
  subtitles = subtitles
50
51
  )
@@ -43,6 +43,7 @@ class VideoSeyred(ExtractorBase):
43
43
  name = self.name,
44
44
  url = self.fix_url(source["file"]),
45
45
  referer = self.main_url,
46
+ headers = {},
46
47
  subtitles = subtitles,
47
48
  )
48
49
  for source in response_data.get("sources", [])
@@ -29,6 +29,8 @@ class DiziYou(PluginBase):
29
29
  f"{main_url}/dizi-arsivi/page/SAYFA/?tur=Vah%C5%9Fi+Bat%C4%B1" : "Vahşi Batı"
30
30
  }
31
31
 
32
+ _data = {}
33
+
32
34
  @kekik_cache(ttl=60*60)
33
35
  async def get_main_page(self, page: int, url: str, category: str) -> list[MainPageResult]:
34
36
  istek = await self.httpx.get(f"{url.replace('SAYFA', str(page))}")
@@ -107,8 +109,6 @@ class DiziYou(PluginBase):
107
109
 
108
110
  @kekik_cache(ttl=15*60)
109
111
  async def load_links(self, url: str) -> list[str]:
110
- self._data.clear()
111
-
112
112
  istek = await self.httpx.get(url)
113
113
  secici = Selector(istek.text)
114
114
 
@@ -158,6 +158,7 @@ class DiziYou(PluginBase):
158
158
  "ext_name" : f"{self.name} | {stream.get('dil')}",
159
159
  "name" : f"{self.name} | {stream.get('dil')} | {item_title} - {ep_name}",
160
160
  "referer" : url,
161
+ "headers" : self.media_handler.headers,
161
162
  "subtitles" : subtitles
162
163
  }
163
164
 
@@ -29,6 +29,8 @@ class HDFilmCehennemi(PluginBase):
29
29
  f"{main_url}/tur/romantik-filmleri-izle-1" : "Romantik Filmleri"
30
30
  }
31
31
 
32
+ _data = {}
33
+
32
34
  @kekik_cache(ttl=60*60)
33
35
  async def get_main_page(self, page: int, url: str, category: str) -> list[MainPageResult]:
34
36
  istek = await self.httpx.get(f"{url}", follow_redirects=True)
@@ -127,6 +129,7 @@ class HDFilmCehennemi(PluginBase):
127
129
  "ext_name" : f"{self.name} | Düşük Kalite",
128
130
  "name" : "Düşük Kalite",
129
131
  "referer" : f"https://cehennempass.pw/download/{video_id}",
132
+ "headers" : self.media_handler.headers,
130
133
  "subtitles" : []
131
134
  }
132
135
 
@@ -147,6 +150,7 @@ class HDFilmCehennemi(PluginBase):
147
150
  "ext_name" : f"{self.name} | Yüksek Kalite",
148
151
  "name" : "Yüksek Kalite",
149
152
  "referer" : f"https://cehennempass.pw/download/{video_id}",
153
+ "headers" : self.media_handler.headers,
150
154
  "subtitles" : []
151
155
  }
152
156
 
@@ -189,8 +193,6 @@ class HDFilmCehennemi(PluginBase):
189
193
 
190
194
  @kekik_cache(ttl=15*60)
191
195
  async def load_links(self, url: str) -> list[str]:
192
- self._data.clear()
193
-
194
196
  istek = await self.httpx.get(url)
195
197
  secici = Selector(istek.text)
196
198
 
@@ -33,6 +33,8 @@ class RecTV(PluginBase):
33
33
  f"{main_url}/api/movie/by/filtres/5/created/SAYFA/{sw_key}/" : "Romantik"
34
34
  }
35
35
 
36
+ _data = {}
37
+
36
38
  @kekik_cache(ttl=60*60)
37
39
  async def get_main_page(self, page: int, url: str, category: str) -> list[MainPageResult]:
38
40
  istek = await self.httpx.get(f"{url.replace('SAYFA', str(int(page) - 1))}")
@@ -50,8 +52,6 @@ class RecTV(PluginBase):
50
52
 
51
53
  @kekik_cache(ttl=60*60)
52
54
  async def search(self, query: str) -> list[SearchResult]:
53
- self.media_handler.headers.update({"User-Agent": "googleusercontent"})
54
-
55
55
  istek = await self.http2.get(f"{self.main_url}/api/search/{query}/{self.sw_key}/")
56
56
 
57
57
  kanallar = istek.json().get("channels")
@@ -95,6 +95,7 @@ class RecTV(PluginBase):
95
95
  "ext_name" : self.name,
96
96
  "name" : f"{veri.get('title')} | {ep_model.season}. Sezon {ep_model.episode}. Bölüm",
97
97
  "referer" : "https://twitter.com/",
98
+ "headers" : self.media_handler.headers,
98
99
  "subtitles" : []
99
100
  }
100
101
 
@@ -123,6 +124,8 @@ class RecTV(PluginBase):
123
124
 
124
125
  @kekik_cache(ttl=15*60)
125
126
  async def load_links(self, url: str) -> list[str]:
127
+ self.media_handler.headers.update({"User-Agent": "googleusercontent"})
128
+
126
129
  try:
127
130
  veri = loads(url)
128
131
  except Exception:
@@ -130,8 +133,6 @@ class RecTV(PluginBase):
130
133
 
131
134
  videolar = []
132
135
  if veri.get("sources"):
133
- self._data.clear()
134
-
135
136
  for kaynak in veri.get("sources"):
136
137
  video_link = kaynak.get("url")
137
138
  if "otolinkaff" in video_link:
@@ -141,6 +142,7 @@ class RecTV(PluginBase):
141
142
  "ext_name" : self.name,
142
143
  "name" : veri.get("title"),
143
144
  "referer" : "https://twitter.com/",
145
+ "headers" : self.media_handler.headers,
144
146
  "subtitles" : []
145
147
  }
146
148
  videolar.append(video_link)
@@ -190,6 +190,7 @@ class Shorten(PluginBase):
190
190
  "ext_name" : self.name,
191
191
  "name" : f"{ep_model.title}",
192
192
  "referer" : f"{self.main_url}/tr",
193
+ "headers" : self.media_handler.headers,
193
194
  "subtitles" : []
194
195
  }
195
196
 
@@ -34,6 +34,8 @@ class SineWix(PluginBase):
34
34
  f"{main_url}/sinewix/movies/36" : "Tarih",
35
35
  }
36
36
 
37
+ _data = {}
38
+
37
39
  @kekik_cache(ttl=60*60)
38
40
  async def get_main_page(self, page: int, url: str, category: str) -> list[MainPageResult]:
39
41
  istek = await self.httpx.get(f"{url}/{page}")
@@ -110,6 +112,7 @@ class SineWix(PluginBase):
110
112
  "ext_name" : self.name,
111
113
  "name" : f"{title} | {ep_model.season}x{ep_model.episode}",
112
114
  "referer" : self.main_url,
115
+ "headers" : self.media_handler.headers,
113
116
  "subtitles" : []
114
117
  }
115
118
 
@@ -137,13 +140,13 @@ class SineWix(PluginBase):
137
140
  alt_title = veri.get("original_name") or ""
138
141
  title = f"{org_title} - {alt_title}" if (alt_title and org_title != alt_title) else org_title
139
142
 
140
- self._data.clear()
141
143
  for video in veri.get("videos"):
142
144
  video_link = video.get("link").split("_blank\">")[-1]
143
145
  self._data[video_link] = {
144
146
  "ext_name" : self.name,
145
147
  "name" : f"{self.name} | {title}",
146
148
  "referer" : self.main_url,
149
+ "headers" : self.media_handler.headers,
147
150
  "subtitles" : []
148
151
  }
149
152
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: KekikStream
3
- Version: 1.4.6
3
+ Version: 1.4.8
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,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: KekikStream
3
- Version: 1.4.6
3
+ Version: 1.4.8
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
@@ -6,7 +6,7 @@ from io import open
6
6
  setup(
7
7
  # ? Genel Bilgiler
8
8
  name = "KekikStream",
9
- version = "1.4.6",
9
+ version = "1.4.8",
10
10
  url = "https://github.com/keyiflerolsun/KekikStream",
11
11
  description = "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ı",
12
12
  keywords = ["KekikStream", "KekikAkademi", "keyiflerolsun"],
File without changes
File without changes
File without changes
File without changes