KekikStream 0.4.1__py3-none-any.whl → 0.4.3__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.
@@ -12,12 +12,17 @@ class MediaHandler:
12
12
  self.headers = headers
13
13
  self.title = title
14
14
 
15
+ def play_media(self, extract_data: ExtractResult):
16
+ if subprocess.check_output(['uname', '-o']).strip() == b'Android':
17
+ return self.play_with_android_mxplayer(extract_data)
18
+
19
+ if "Cookie" in self.headers or extract_data.subtitles:
20
+ return self.play_with_mpv(extract_data)
21
+
22
+ return self.play_with_vlc(extract_data)
23
+
15
24
  def play_with_vlc(self, extract_data: ExtractResult):
16
25
  try:
17
- if "Cookie" in self.headers or extract_data.subtitles:
18
- self.play_with_mpv(extract_data)
19
- return
20
-
21
26
  vlc_command = ["vlc", "--quiet"]
22
27
 
23
28
  if self.title:
@@ -77,3 +82,39 @@ class MediaHandler:
77
82
  except FileNotFoundError:
78
83
  konsol.print("[red]mpv bulunamadı! mpv kurulu olduğundan emin olun.[/red]")
79
84
  konsol.print({"title": self.title, "url": extract_data.url, "headers": self.headers})
85
+
86
+ def play_with_android_mxplayer(self, extract_data: ExtractResult):
87
+ paketler = [
88
+ "com.mxtech.videoplayer.ad/com.mxtech.videoplayer.ActivityScreen", # Free sürüm
89
+ "com.mxtech.videoplayer.pro/com.mxtech.videoplayer.ActivityScreen" # Pro sürüm
90
+ ]
91
+
92
+ hatalar = []
93
+
94
+ for paket in paketler:
95
+ try:
96
+ android_command = [
97
+ "am", "start",
98
+ "-a", "android.intent.action.VIEW",
99
+ "-d", extract_data.url,
100
+ "-n", paket
101
+ ]
102
+
103
+ if self.title:
104
+ android_command.extend(["--eu", "title", self.title])
105
+
106
+ if self.headers:
107
+ for key, value in self.headers.items():
108
+ android_command.extend(["--es", "headers", key, value])
109
+
110
+ with open(os.devnull, "w") as devnull:
111
+ subprocess.run(android_command, stdout=devnull, stderr=devnull, check=True)
112
+
113
+ return
114
+
115
+ except subprocess.CalledProcessError as hata:
116
+ konsol.print(f"[red]{paket} oynatma hatası: {hata}[/red]")
117
+ konsol.print({"title": self.title, "url": extract_data.url, "headers": self.headers})
118
+ except FileNotFoundError:
119
+ konsol.print(f"Paket: {paket}, Hata: MX Player kurulu değil")
120
+ konsol.print({"title": self.title, "url": extract_data.url, "headers": self.headers})
@@ -16,4 +16,4 @@ class MediaManager:
16
16
  self.media_handler.headers.update(headers)
17
17
 
18
18
  def play_media(self, extract_data):
19
- self.media_handler.play_with_vlc(extract_data)
19
+ self.media_handler.play_media(extract_data)
@@ -105,4 +105,4 @@ class SineWix(PluginBase):
105
105
  async def play(self, name: str, url: str, referer: str, subtitles: list[Subtitle]):
106
106
  extract_result = ExtractResult(name=name, url=url, referer=referer, subtitles=subtitles)
107
107
  self.media_handler.title = name
108
- self.media_handler.play_with_vlc(extract_result)
108
+ self.media_handler.play_media(extract_result)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: KekikStream
3
- Version: 0.4.1
3
+ Version: 0.4.3
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 @@ KekikStream/CLI/pypi_kontrol.py,sha256=MchatOwCWCpFBtgt09yag9Rjal9XFyh2W_oVs2p7S
6
6
  KekikStream/Core/ExtractorBase.py,sha256=wmGl-Xiem4s5M7baVOxYLba7UdygCDAXggo6Up8pFJE,1409
7
7
  KekikStream/Core/ExtractorLoader.py,sha256=rrll3F2CyVmx3foa57PG0FocQMrFuMpdlG0Uf0-2Fz4,3915
8
8
  KekikStream/Core/ExtractorModels.py,sha256=huIcPQ5VIRfMx0LcL5SS1u4dldZbHjzHKEdSEtOPlc0,456
9
- KekikStream/Core/MediaHandler.py,sha256=9nwudUVv4Zu8r0uHswFcwv5OWDKoz2k_PhjHvcq0m3I,3345
9
+ KekikStream/Core/MediaHandler.py,sha256=OJxc2WTc8BUKsMrLGgXJC_GMAsGHmJ9eVJC7t07ih9c,5061
10
10
  KekikStream/Core/PluginBase.py,sha256=ZQx6adxOKuX50TPN5pxE8oG9FD-ZjPXSHpSiW086QPQ,2479
11
11
  KekikStream/Core/PluginLoader.py,sha256=5HQF8Em1TjvqMBPLKB7M_i2y6zPH6JZao-uekeacoSs,2574
12
12
  KekikStream/Core/PluginModels.py,sha256=WWPEz8PpZZ4bLMDJzTE19BsQEJObkyhaYjDkyLaF2Ck,2365
@@ -37,7 +37,7 @@ KekikStream/Extractors/VidMoly.py,sha256=BKJgk60GomFYiLFsRQSR2sOYP105Aix5y5XLazB
37
37
  KekikStream/Extractors/VidMoxy.py,sha256=_K6BA7Uo59DA3ty_tsayCUZjXmRoDBTghekVNXiuZ7g,1800
38
38
  KekikStream/Extractors/VideoSeyred.py,sha256=otyGi1zdY_JPrXJjoZjesCQDiOkxFdaWiXQ9mOmrygA,1780
39
39
  KekikStream/Managers/ExtractorManager.py,sha256=9rGlUsnedJ7fwIeObN5Vsm8H5VLal0ODO7F93dDRx8w,976
40
- KekikStream/Managers/MediaManager.py,sha256=F7mkSvAttAaMHRvnDcxnV2K1D_sK644BCSrEaAmMl_U,522
40
+ KekikStream/Managers/MediaManager.py,sha256=SPO85LchT7bJKSecmXd1FzCjg0rUT8s3B1wulPa4SMw,519
41
41
  KekikStream/Managers/PluginManager.py,sha256=YDBLHB_Fh79A3Pei0ny2KLVY4VSihdNiKBh_w5tBl-0,637
42
42
  KekikStream/Managers/UIManager.py,sha256=OrGxzbhRPTCqiLEXjipLb8ChF7saV3fvFIUXLKT9w6Q,1612
43
43
  KekikStream/Managers/__init__.py,sha256=3085I_9Sa2L_Vq6Z-QvYUYn1BapkN4sQqBo8ITZoD_4,251
@@ -47,11 +47,11 @@ KekikStream/Plugins/FilmMakinesi.py,sha256=rz8TQeL41PJbeEmksgPHIhp6J-4vbSCBTeEH0
47
47
  KekikStream/Plugins/FullHDFilmizlesene.py,sha256=Fa0gRP_NoMfPC8HIKRxERjQVOv8Fyb-ayMJ2EooZ7BE,3080
48
48
  KekikStream/Plugins/JetFilmizle.py,sha256=FXkMSQtjYoxwIonjRENFa91rC42L_8SYRhjhuSgsu60,3919
49
49
  KekikStream/Plugins/SezonlukDizi.py,sha256=5BZVzQ2eQtymHxO0bzjA2ho4FFNahPFQly4hoHuH8lo,4441
50
- KekikStream/Plugins/SineWix.py,sha256=ZtcIwPW0ONGkSjT7Ye8b71RWdHZMUZefX-JTWu6uGSs,4854
50
+ KekikStream/Plugins/SineWix.py,sha256=iBtSl150N3GHWqHJDLVNFDSJff-00PHksQC1h2urR8w,4851
51
51
  KekikStream/Plugins/UgurFilm.py,sha256=yYXee5uxwNnPqFJZ6s6cRkmUyqS3Vv8x-iesPalc4j4,2930
52
- KekikStream-0.4.1.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
53
- KekikStream-0.4.1.dist-info/METADATA,sha256=uXUyKuVd4QzpXgkrS_6U1dFbuPrPPHewTw0y3EtJi2I,3987
54
- KekikStream-0.4.1.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
55
- KekikStream-0.4.1.dist-info/entry_points.txt,sha256=dFwdiTx8djyehI0Gsz-rZwjAfZzUzoBSrmzRu9ubjJc,50
56
- KekikStream-0.4.1.dist-info/top_level.txt,sha256=DNmGJDXl27Drdfobrak8KYLmocW_uznVYFJOzcjUgmY,12
57
- KekikStream-0.4.1.dist-info/RECORD,,
52
+ KekikStream-0.4.3.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
53
+ KekikStream-0.4.3.dist-info/METADATA,sha256=4RIuFB_L6X-FfD1RGp3O1Nb0bCK0aIOLQh5HdNKZpvs,3987
54
+ KekikStream-0.4.3.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
55
+ KekikStream-0.4.3.dist-info/entry_points.txt,sha256=dFwdiTx8djyehI0Gsz-rZwjAfZzUzoBSrmzRu9ubjJc,50
56
+ KekikStream-0.4.3.dist-info/top_level.txt,sha256=DNmGJDXl27Drdfobrak8KYLmocW_uznVYFJOzcjUgmY,12
57
+ KekikStream-0.4.3.dist-info/RECORD,,