KekikStream 2.5.0__py3-none-any.whl → 2.5.1__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.
- KekikStream/Plugins/FilmEkseni.py +53 -16
- KekikStream/Plugins/FilmMakinesi.py +1 -1
- KekikStream/Plugins/FilmciBaba.py +1 -1
- {kekikstream-2.5.0.dist-info → kekikstream-2.5.1.dist-info}/METADATA +3 -3
- {kekikstream-2.5.0.dist-info → kekikstream-2.5.1.dist-info}/RECORD +9 -9
- {kekikstream-2.5.0.dist-info → kekikstream-2.5.1.dist-info}/WHEEL +0 -0
- {kekikstream-2.5.0.dist-info → kekikstream-2.5.1.dist-info}/entry_points.txt +0 -0
- {kekikstream-2.5.0.dist-info → kekikstream-2.5.1.dist-info}/licenses/LICENSE +0 -0
- {kekikstream-2.5.0.dist-info → kekikstream-2.5.1.dist-info}/top_level.txt +0 -0
|
@@ -137,23 +137,60 @@ class FilmEkseni(PluginBase):
|
|
|
137
137
|
istek = await self.httpx.get(url)
|
|
138
138
|
secici = HTMLHelper(istek.text)
|
|
139
139
|
|
|
140
|
+
# Dil sekmelerini bul (Dublaj, Altyazı vb.)
|
|
141
|
+
# Fragman vb. linkleri dahil etmemek için sadece 'a.nav-link' bakıyoruz
|
|
142
|
+
lang_tabs = [
|
|
143
|
+
tab for tab in secici.select("ul.nav-tabs.nav-slider a.nav-link")
|
|
144
|
+
if "fragman" not in tab.text().lower()
|
|
145
|
+
]
|
|
146
|
+
|
|
147
|
+
# Player panellerini bul
|
|
148
|
+
tab_panes = secici.select("div.tab-pane")
|
|
149
|
+
|
|
140
150
|
sources = [] # (name, url, is_active)
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
151
|
+
|
|
152
|
+
# Eğer dil sekmeleri ve paneller eşleşiyorsa (ideal durum)
|
|
153
|
+
if lang_tabs and tab_panes:
|
|
154
|
+
for i, pane in enumerate(tab_panes):
|
|
155
|
+
if i >= len(lang_tabs):
|
|
156
|
+
break
|
|
157
|
+
|
|
158
|
+
lang_name = lang_tabs[i].text(strip=True)
|
|
159
|
+
player_links = secici.select("a.nav-link", element=pane)
|
|
160
|
+
|
|
161
|
+
for link in player_links:
|
|
162
|
+
p_name = link.text(strip=True)
|
|
163
|
+
if not p_name or any(x in p_name.lower() for x in ["paylaş", "indir", "hata"]):
|
|
164
|
+
continue
|
|
165
|
+
|
|
166
|
+
href = link.attrs.get("href")
|
|
167
|
+
if not href or href == "#":
|
|
168
|
+
continue
|
|
169
|
+
|
|
170
|
+
# Yeni isim "Moly | Türkçe Dublaj"
|
|
171
|
+
full_name = f"{p_name} | {lang_name}"
|
|
172
|
+
is_active = "active" in link.attrs.get("class", "")
|
|
173
|
+
|
|
174
|
+
sources.append((full_name, self.fix_url(href), is_active))
|
|
175
|
+
|
|
176
|
+
# Eğer panel yapısı beklediğimizden farklıysa eski mantığa dön
|
|
177
|
+
if not sources:
|
|
178
|
+
if nav_links := secici.select("nav.card-nav a.nav-link"):
|
|
179
|
+
seen_urls = set()
|
|
180
|
+
for link in nav_links:
|
|
181
|
+
if link.attrs.get("href") == "#":
|
|
182
|
+
continue # Sinema Modu vb.
|
|
183
|
+
|
|
184
|
+
name = link.text(strip=True)
|
|
185
|
+
href = link.attrs.get("href")
|
|
186
|
+
is_active = "active" in link.attrs.get("class", "")
|
|
187
|
+
|
|
188
|
+
if href and href not in seen_urls:
|
|
189
|
+
seen_urls.add(href)
|
|
190
|
+
sources.append((name, self.fix_url(href), is_active))
|
|
191
|
+
else:
|
|
192
|
+
# Nav yoksa mevcut sayfayı (Varsayılan/VIP) al
|
|
193
|
+
sources.append(("VIP", url, True))
|
|
157
194
|
|
|
158
195
|
tasks = []
|
|
159
196
|
for name, link_url, is_active in sources:
|
|
@@ -78,7 +78,7 @@ class FilmMakinesi(PluginBase):
|
|
|
78
78
|
|
|
79
79
|
title = self.clean_title(secici.select_text("h1.title"))
|
|
80
80
|
poster = secici.select_poster("img.cover-img")
|
|
81
|
-
description = secici.select_text("div.info-description
|
|
81
|
+
description = secici.select_text("div.info-description")
|
|
82
82
|
rating = secici.select_text("div.info div.imdb b")
|
|
83
83
|
year = secici.select_text("span.date a")
|
|
84
84
|
actors = secici.select_texts("div.cast-name")
|
|
@@ -5,7 +5,7 @@ from KekikStream.Core import PluginBase, MainPageResult, SearchResult, MovieInfo
|
|
|
5
5
|
class FilmciBaba(PluginBase):
|
|
6
6
|
name = "FilmciBaba"
|
|
7
7
|
language = "tr"
|
|
8
|
-
main_url = "https://
|
|
8
|
+
main_url = "https://4kizle.live"
|
|
9
9
|
favicon = f"https://www.google.com/s2/favicons?domain={main_url}&sz=64"
|
|
10
10
|
description = "Filmci Baba, film izleme sitesi 4k Full film izle, 1080p ve 4k kalite de sinema filmleri ve dizileri, tek parça hd kalitede türkçe dublajlı filmler seyret."
|
|
11
11
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: KekikStream
|
|
3
|
-
Version: 2.5.
|
|
3
|
+
Version: 2.5.1
|
|
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
|
|
@@ -63,13 +63,13 @@ Terminal üzerinden içerik arayın, VLC/MPV ile doğrudan izleyin veya kendi AP
|
|
|
63
63
|
|
|
64
64
|
## 🚦 Ne Sunar?
|
|
65
65
|
|
|
66
|
-
KekikStream, Türkçe medya kaynaklarını tek CLI arayüzünde toplayarak hızlı arama ve oynatma sunar. Plugin mimarisi sayesinde yeni kaynaklar eklemek ve [
|
|
66
|
+
KekikStream, Türkçe medya kaynaklarını tek CLI arayüzünde toplayarak hızlı arama ve oynatma sunar. Plugin mimarisi sayesinde yeni kaynaklar eklemek ve [KekikStreamAPI](https://github.com/keyiflerolsun/KekikStreamAPI) ile web/API üzerinden yayın yapmak kolaydır.
|
|
67
67
|
|
|
68
68
|
- 🎥 Çoklu kaynak desteği: Onlarca Türkçe medya sitesi
|
|
69
69
|
- 🔌 Plugin mimarisi: Yeni kaynak eklemek dakikalar sürer
|
|
70
70
|
- 🎬 Çoklu oynatıcı: VLC, MPV, MX Player
|
|
71
71
|
- 🖥️ CLI & kütüphane: Terminalde veya kod içinde kullanın
|
|
72
|
-
- 🌐 API/Web UI:
|
|
72
|
+
- 🌐 API/Web UI: KekikStreamAPI üzerinden uzak erişim
|
|
73
73
|
|
|
74
74
|
---
|
|
75
75
|
|
|
@@ -68,11 +68,11 @@ KekikStream/Plugins/DiziPal.py,sha256=Ezrjbfq7EUcEjpA6yuOUtlhC009CE4aXW0_eM8Uf3y
|
|
|
68
68
|
KekikStream/Plugins/DiziYou.py,sha256=Z6MznGOcUnnxdsQsK-rnPmGHa1PAq7NcFw0slXlEVGo,6759
|
|
69
69
|
KekikStream/Plugins/Dizilla.py,sha256=U6z4cfy48HhtJNGi9-A3kUzoph-JpQuMtiOZ7fE_DUI,12705
|
|
70
70
|
KekikStream/Plugins/FilmBip.py,sha256=enTqWdx8YbseSsyQEYIVs6Dr7A7llkn7AtFaTYuatCE,9137
|
|
71
|
-
KekikStream/Plugins/FilmEkseni.py,sha256=
|
|
72
|
-
KekikStream/Plugins/FilmMakinesi.py,sha256=
|
|
71
|
+
KekikStream/Plugins/FilmEkseni.py,sha256=EwtHH1kuTV2ow1Yc9D063CZ0c4OOXcwchyKN5oAXY_s,8645
|
|
72
|
+
KekikStream/Plugins/FilmMakinesi.py,sha256=AdollSseX3M7sQQ5YAyLU93t7PncP4PIdqYd3nUog6s,7970
|
|
73
73
|
KekikStream/Plugins/FilmModu.py,sha256=7qm7kC4R0oH1OWyLleSqj6SMUgWbbERfYbE1d726ZOM,6943
|
|
74
74
|
KekikStream/Plugins/Filmatek.py,sha256=AdOeBVP1rfq5R1YJlQj2saT77rnzVHX54tEOAH-t9fI,7700
|
|
75
|
-
KekikStream/Plugins/FilmciBaba.py,sha256=
|
|
75
|
+
KekikStream/Plugins/FilmciBaba.py,sha256=rBrtFwZpe4QtR2Q-Jze_KaC2x2dXrArpUpQPn5Na4CU,6934
|
|
76
76
|
KekikStream/Plugins/FullHDFilmizlesene.py,sha256=dJ1xo1D3ujPCQE6PewpqdvSMKlBbifA67uU7BAMmvVM,6274
|
|
77
77
|
KekikStream/Plugins/HDFilm.py,sha256=m6tjV1O1l5U_jqkGKizi62GOdSMd5osyOS2_9jehS-w,10754
|
|
78
78
|
KekikStream/Plugins/HDFilmCehennemi.py,sha256=h3FTKN-psrzvN0Juw8Am83MV8QL9aX-RSWhYqXRQU-E,17368
|
|
@@ -91,9 +91,9 @@ KekikStream/Plugins/SuperFilmGeldi.py,sha256=hXhYYuQkVbYJ07P8y5QjY5iR3rVgUfAWc_M
|
|
|
91
91
|
KekikStream/Plugins/UgurFilm.py,sha256=2U3-rC9JzwDoF1c8t3VyE3jMcz-SB51uxFX-8DqrQ7M,6778
|
|
92
92
|
KekikStream/Plugins/Watch32.py,sha256=wAw-glE9bQNsyfzhv1zlFIjYAhSvK58mUri-XGytuHs,7318
|
|
93
93
|
KekikStream/Plugins/YabanciDizi.py,sha256=aqdPLQ3Oajs32JNkgIPeqHuYgcM8K2jGHT0Ikw8Q6jY,10582
|
|
94
|
-
kekikstream-2.5.
|
|
95
|
-
kekikstream-2.5.
|
|
96
|
-
kekikstream-2.5.
|
|
97
|
-
kekikstream-2.5.
|
|
98
|
-
kekikstream-2.5.
|
|
99
|
-
kekikstream-2.5.
|
|
94
|
+
kekikstream-2.5.1.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
|
95
|
+
kekikstream-2.5.1.dist-info/METADATA,sha256=l2cQxV7Vxwonbq-ptaOuwW8AzaVc0ATGqsgZ23zpra8,10761
|
|
96
|
+
kekikstream-2.5.1.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
|
|
97
|
+
kekikstream-2.5.1.dist-info/entry_points.txt,sha256=dFwdiTx8djyehI0Gsz-rZwjAfZzUzoBSrmzRu9ubjJc,50
|
|
98
|
+
kekikstream-2.5.1.dist-info/top_level.txt,sha256=DNmGJDXl27Drdfobrak8KYLmocW_uznVYFJOzcjUgmY,12
|
|
99
|
+
kekikstream-2.5.1.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|