KekikStream 2.5.7__py3-none-any.whl → 2.5.8__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,7 +1,7 @@
1
1
  # Bu araç @keyiflerolsun tarafından | @KekikAkademi için yazılmıştır.
2
2
 
3
3
  from KekikStream.Core import ExtractorBase, ExtractResult, HTMLHelper
4
- from Kekik.Sifreleme import AESManager
4
+ from Kekik.Sifreleme import AESManager
5
5
  import contextlib
6
6
 
7
7
  class HotStream(ExtractorBase):
@@ -24,4 +24,9 @@ class HotStream(ExtractorBase):
24
24
  if not m3u8_url:
25
25
  raise ValueError(f"HotStream: Video linki bulunamadı. {url}")
26
26
 
27
- return ExtractResult(name=self.name, url=self.fix_url(m3u8_url), referer=url)
27
+ return ExtractResult(
28
+ name = self.name,
29
+ url = self.fix_url(m3u8_url),
30
+ referer = url,
31
+ user_agent = self.httpx.headers.get("User-Agent")
32
+ )
@@ -0,0 +1,94 @@
1
+ # Bu araç @keyiflerolsun tarafından | @KekikAkademi için yazılmıştır.
2
+
3
+ from KekikStream.Core import PluginBase, MainPageResult, SearchResult, MovieInfo, ExtractResult, HTMLHelper
4
+
5
+ class RealFilmIzle(PluginBase):
6
+ name = "RealFilmIzle"
7
+ language = "tr"
8
+ main_url = "https://realfilmizle.com"
9
+ favicon = f"https://www.google.com/s2/favicons?domain={main_url}&sz=64"
10
+ description = "realfilmizle.com, sinemayı seven kullanıcılar için hazırlanmış, zengin içerik yapısına sahip bir online film izleme sitesidir."
11
+
12
+ main_page = {
13
+ f"{main_url}/dizi/aile-filmleri/page" : "Aile",
14
+ f"{main_url}/dizi/aksiyon-filmleri/page" : "Aksiyon",
15
+ f"{main_url}/dizi/animasyon-filmleri/page" : "Animasyon",
16
+ f"{main_url}/dizi/anime-filmleri/page" : "Anime",
17
+ f"{main_url}/dizi/belgeseler-filmleri/page" : "Belgeseler",
18
+ f"{main_url}/dizi/bilim-kurgu-filmleri/page" : "Bilim-Kurgu",
19
+ f"{main_url}/dizi/biyografi-filmleri/page" : "Biyoğrafi",
20
+ f"{main_url}/dizi/dram-filmleri/page" : "Dram",
21
+ f"{main_url}/dizi/erotik-filmleri/page" : "Erotik",
22
+ f"{main_url}/dizi/fantastik-filmleri/page" : "Fantastik",
23
+ f"{main_url}/dizi/gerilim-filmleri/page" : "Gerilim",
24
+ f"{main_url}/dizi/gizem-filmleri/page" : "Gizem",
25
+ f"{main_url}/dizi/hint-filmleri/page" : "Hint",
26
+ f"{main_url}/dizi/komedi-filmleri/page" : "Komedi",
27
+ f"{main_url}/dizi/korku-filmleri/page" : "Korku",
28
+ f"{main_url}/dizi/macera-filmleri/page" : "Macera",
29
+ f"{main_url}/dizi/muzikal-filmleri/page" : "Müzikal",
30
+ f"{main_url}/dizi/netflix-filmleri/page" : "Netflix",
31
+ f"{main_url}/dizi/romantik-filmleri/page" : "Romantik",
32
+ f"{main_url}/dizi/savas-filmleri/page" : "Savaş",
33
+ f"{main_url}/dizi/spor-filmleri/page" : "Spor",
34
+ f"{main_url}/dizi/suc-filmleri/page" : "Suç",
35
+ f"{main_url}/dizi/tarihi-filmleri/page" : "Tarihi",
36
+ f"{main_url}/dizi/western-filmleri/page" : "Western",
37
+ f"{main_url}/dizi/yerli-filmleri/page" : "Yerli",
38
+ }
39
+
40
+ async def get_articles(self, secici: HTMLHelper) -> list[dict]:
41
+ articles = []
42
+ for veri in secici.select("article.movie-box"):
43
+ title = secici.select_text("div.name a", veri)
44
+ href = secici.select_attr("div.name a", "href", veri)
45
+ poster = secici.select_poster("img", veri)
46
+
47
+ articles.append({
48
+ "title" : self.clean_title(title),
49
+ "url" : self.fix_url(href),
50
+ "poster": self.fix_url(poster),
51
+ })
52
+
53
+ return articles
54
+
55
+ async def get_main_page(self, page: int, url: str, category: str) -> list[MainPageResult]:
56
+ istek = await self.httpx.get(f"{url}/{page}")
57
+ secici = HTMLHelper(istek.text)
58
+ veriler = await self.get_articles(secici)
59
+
60
+ return [MainPageResult(**veri, category=category) for veri in veriler if veri]
61
+
62
+ async def search(self, query: str) -> list[SearchResult]:
63
+ istek = await self.httpx.get(f"{self.main_url}/?s={query}")
64
+ secici = HTMLHelper(istek.text)
65
+ veriler = await self.get_articles(secici)
66
+
67
+ return [SearchResult(**veri) for veri in veriler if veri]
68
+
69
+ async def load_item(self, url: str) -> MovieInfo:
70
+ istek = await self.httpx.get(url)
71
+ secici = HTMLHelper(istek.text)
72
+
73
+ title = self.clean_title(secici.select_text("div.film h1"))
74
+ poster = secici.select_poster("div.poster img")
75
+ description = secici.select_direct_text("div.description")
76
+ tags = secici.select_texts("ol.scheme-breadcrumbs li a")
77
+ tags = [tag.replace("✅ ", "").replace(" Filmleri", "") for tag in tags if tag != "Film izle"]
78
+
79
+ return MovieInfo(
80
+ url = url,
81
+ poster = self.fix_url(poster),
82
+ title = self.clean_title(title),
83
+ description = description,
84
+ tags = tags
85
+ )
86
+
87
+ async def load_links(self, url: str) -> list[ExtractResult]:
88
+ istek = await self.httpx.get(url)
89
+ secici = HTMLHelper(istek.text)
90
+
91
+ iframe = secici.select_attr("div.video-content iframe", "src")
92
+ result = await self.extract(iframe)
93
+
94
+ return [result] if result else []
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: KekikStream
3
- Version: 2.5.7
3
+ Version: 2.5.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
@@ -26,7 +26,7 @@ KekikStream/Extractors/ExPlay.py,sha256=hrG31pRFD5s_0wNls0fF8AdMn6ve5OD-mOAV32_1
26
26
  KekikStream/Extractors/Filemoon.py,sha256=bdPKk58_HXgRL_ysNcpuESXrijTxKMETyBnXdmR0b_0,2289
27
27
  KekikStream/Extractors/HDMomPlayer.py,sha256=ui8aH9sc3NDlN2uKlhJiySUHA__mpSSvAPHRzde6F2k,1177
28
28
  KekikStream/Extractors/HDPlayerSystem.py,sha256=hoPN7fqVRBK97BnQ7vF_5TlEO28BD3DrsngDW48rw5E,936
29
- KekikStream/Extractors/HotStream.py,sha256=37H9pK4HSEqGR6QKgxz887JCBXfXB1NXDpBGuhvPmXo,1078
29
+ KekikStream/Extractors/HotStream.py,sha256=qHk5qD7HK4A6LCV2A9UFp7weT60BjjZRj-TBp3-Jl7Q,1210
30
30
  KekikStream/Extractors/JFVid.py,sha256=rdy0bmqZIruejn1G1YNxVM3wlqxkdFRd4zunxxZlev4,746
31
31
  KekikStream/Extractors/JetTv.py,sha256=Cdx1XZEtQZkrmOdZdgM9E1iBkCNzVTExjrI_F-3Nv-I,1176
32
32
  KekikStream/Extractors/JetV.py,sha256=knyDiOCSBMC1eQHo5LRFx5apn3NQflKY3xyloLDGkaI,2069
@@ -79,6 +79,7 @@ KekikStream/Plugins/HDFilm.py,sha256=m6tjV1O1l5U_jqkGKizi62GOdSMd5osyOS2_9jehS-w
79
79
  KekikStream/Plugins/HDFilmCehennemi.py,sha256=h3FTKN-psrzvN0Juw8Am83MV8QL9aX-RSWhYqXRQU-E,17368
80
80
  KekikStream/Plugins/JetFilmizle.py,sha256=zvjO18atPLJtdDRsY_yr0s9YKcHpePWhdp2PMuI7nIs,10275
81
81
  KekikStream/Plugins/KultFilmler.py,sha256=D5aAFrv0ACtSBinwHTfNvP1Jp0W8W7-mwUsju_YPilk,10841
82
+ KekikStream/Plugins/RealFilmIzle.py,sha256=3XgOInKUMFc9eSo-e-ACKmd9eZrP1VKiicfmupFm_Pw,4459
82
83
  KekikStream/Plugins/RecTV.py,sha256=6rYxZV6J84rr2CZKTmP_0raYVp4pa5EMXQD6mMbZHbE,7315
83
84
  KekikStream/Plugins/RoketDizi.py,sha256=TnupXb3cRJMDJAA7hclOPwECgOt5mOJx1hYEL_oK6rk,8488
84
85
  KekikStream/Plugins/SelcukFlix.py,sha256=8jr-HxAIXVILMUykPJRC7yD9AT1q0JU-vBwoYGxkFiM,14484
@@ -92,9 +93,9 @@ KekikStream/Plugins/SuperFilmIzle.py,sha256=iN-kTGHxA1t6QcCtCuN-g00THNWTf1fiBPyd
92
93
  KekikStream/Plugins/UgurFilm.py,sha256=pS5xGwiN_5cut4JIfpz3R-mHCvIZJS4S_DpMRI_Cw-Y,6762
93
94
  KekikStream/Plugins/Watch32.py,sha256=wAw-glE9bQNsyfzhv1zlFIjYAhSvK58mUri-XGytuHs,7318
94
95
  KekikStream/Plugins/YabanciDizi.py,sha256=aqdPLQ3Oajs32JNkgIPeqHuYgcM8K2jGHT0Ikw8Q6jY,10582
95
- kekikstream-2.5.7.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
96
- kekikstream-2.5.7.dist-info/METADATA,sha256=lHy47dgEbzr__M-LS5-IMgSHU-mskbvHU9EuIf9k9dI,10761
97
- kekikstream-2.5.7.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
98
- kekikstream-2.5.7.dist-info/entry_points.txt,sha256=dFwdiTx8djyehI0Gsz-rZwjAfZzUzoBSrmzRu9ubjJc,50
99
- kekikstream-2.5.7.dist-info/top_level.txt,sha256=DNmGJDXl27Drdfobrak8KYLmocW_uznVYFJOzcjUgmY,12
100
- kekikstream-2.5.7.dist-info/RECORD,,
96
+ kekikstream-2.5.8.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
97
+ kekikstream-2.5.8.dist-info/METADATA,sha256=u-rJ1nXVB1KC_lLatAWd_gFwia7Xgef8484i3p1n3Fo,10761
98
+ kekikstream-2.5.8.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
99
+ kekikstream-2.5.8.dist-info/entry_points.txt,sha256=dFwdiTx8djyehI0Gsz-rZwjAfZzUzoBSrmzRu9ubjJc,50
100
+ kekikstream-2.5.8.dist-info/top_level.txt,sha256=DNmGJDXl27Drdfobrak8KYLmocW_uznVYFJOzcjUgmY,12
101
+ kekikstream-2.5.8.dist-info/RECORD,,