KekikStream 0.6.4__tar.gz → 0.6.6__tar.gz

Sign up to get free protection for your applications and to get access to all the features.
Files changed (64) hide show
  1. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Managers/UIManager.py +1 -1
  2. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Plugins/DiziBox.py +12 -7
  3. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Plugins/Dizilla.py +12 -1
  4. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream.egg-info/PKG-INFO +1 -1
  5. {kekikstream-0.6.4 → kekikstream-0.6.6}/PKG-INFO +1 -1
  6. {kekikstream-0.6.4 → kekikstream-0.6.6}/setup.py +1 -1
  7. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/CLI/__init__.py +0 -0
  8. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/CLI/pypi_kontrol.py +0 -0
  9. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Core/ExtractorBase.py +0 -0
  10. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Core/ExtractorLoader.py +0 -0
  11. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Core/ExtractorModels.py +0 -0
  12. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Core/MediaHandler.py +0 -0
  13. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Core/PluginBase.py +0 -0
  14. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Core/PluginLoader.py +0 -0
  15. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Core/PluginModels.py +0 -0
  16. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Core/__init__.py +0 -0
  17. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/CloseLoad.py +0 -0
  18. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/ContentX.py +0 -0
  19. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/FourCX.py +0 -0
  20. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/FourPichive.py +0 -0
  21. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/FourPlayRu.py +0 -0
  22. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/HDStreamAble.py +0 -0
  23. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/Hotlinger.py +0 -0
  24. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/MailRu.py +0 -0
  25. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/MixPlayHD.py +0 -0
  26. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/Odnoklassniki.py +0 -0
  27. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/OkRuHTTP.py +0 -0
  28. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/OkRuSSL.py +0 -0
  29. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/PeaceMakerst.py +0 -0
  30. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/Pichive.py +0 -0
  31. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/PixelDrain.py +0 -0
  32. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/PlayRu.py +0 -0
  33. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/RapidVid.py +0 -0
  34. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/SibNet.py +0 -0
  35. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/Sobreatsesuyp.py +0 -0
  36. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/TRsTX.py +0 -0
  37. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/TauVideo.py +0 -0
  38. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/TurboImgz.py +0 -0
  39. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/VidMoly.py +0 -0
  40. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/VidMoxy.py +0 -0
  41. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Extractors/VideoSeyred.py +0 -0
  42. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Managers/ExtractorManager.py +0 -0
  43. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Managers/MediaManager.py +0 -0
  44. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Managers/PluginManager.py +0 -0
  45. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Managers/__init__.py +0 -0
  46. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Plugins/FilmMakinesi.py +0 -0
  47. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Plugins/FullHDFilmizlesene.py +0 -0
  48. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Plugins/JetFilmizle.py +0 -0
  49. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Plugins/SezonlukDizi.py +0 -0
  50. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Plugins/SineWix.py +0 -0
  51. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Plugins/UgurFilm.py +0 -0
  52. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/Plugins/__RecTV.py +0 -0
  53. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/__init__.py +0 -0
  54. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/__main__.py +0 -0
  55. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream/requirements.txt +0 -0
  56. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream.egg-info/SOURCES.txt +0 -0
  57. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream.egg-info/dependency_links.txt +0 -0
  58. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream.egg-info/entry_points.txt +0 -0
  59. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream.egg-info/requires.txt +0 -0
  60. {kekikstream-0.6.4 → kekikstream-0.6.6}/KekikStream.egg-info/top_level.txt +0 -0
  61. {kekikstream-0.6.4 → kekikstream-0.6.6}/LICENSE +0 -0
  62. {kekikstream-0.6.4 → kekikstream-0.6.6}/MANIFEST.in +0 -0
  63. {kekikstream-0.6.4 → kekikstream-0.6.6}/README.md +0 -0
  64. {kekikstream-0.6.4 → kekikstream-0.6.6}/setup.cfg +0 -0
@@ -40,7 +40,7 @@ class UIManager:
40
40
  if key == "episodes":
41
41
  continue
42
42
 
43
- if value:
43
+ if isinstance(value, str):
44
44
  if '",' in value:
45
45
  continue
46
46
 
@@ -3,7 +3,7 @@
3
3
  from KekikStream.Core import PluginBase, SearchResult, SeriesInfo, Episode
4
4
  from Kekik.Sifreleme import CryptoJS
5
5
  from parsel import Selector
6
- import re, urllib.parse, base64
6
+ import re, urllib.parse, base64, contextlib, asyncio
7
7
 
8
8
  class DiziBox(PluginBase):
9
9
  name = "DiziBox"
@@ -95,14 +95,19 @@ class DiziBox(PluginBase):
95
95
  elif "/player/moly/moly.php" in iframe_link:
96
96
  iframe_link = iframe_link.replace("moly.php?h=", "moly.php?wmode=opaque&h=")
97
97
  self.oturum.headers.update({"Referer": referer})
98
- istek = await self.oturum.get(iframe_link)
98
+ while True:
99
+ await asyncio.sleep(.3)
100
+ with contextlib.suppress(Exception):
101
+ istek = await self.oturum.get(iframe_link)
102
+
103
+ if atob_data := re.search(r"unescape\(\"(.*)\"\)", istek.text):
104
+ decoded_atob = urllib.parse.unquote(atob_data[1])
105
+ str_atob = base64.b64decode(decoded_atob).decode("utf-8")
99
106
 
100
- if atob_data := re.search(r"unescape\(\"(.*)\"\)", istek.text):
101
- decoded_atob = urllib.parse.unquote(atob_data[1])
102
- str_atob = base64.b64decode(decoded_atob).decode("utf-8")
107
+ if iframe := Selector(str_atob).css("div#Player iframe::attr(src)").get():
108
+ results.append(iframe)
103
109
 
104
- if iframe := Selector(str_atob).css("div#Player iframe::attr(src)").get():
105
- results.append(iframe)
110
+ break
106
111
 
107
112
  elif "/player/haydi.php" in iframe_link:
108
113
  okru_url = base64.b64decode(iframe_link.split("?v=")[-1]).decode("utf-8")
@@ -3,6 +3,7 @@
3
3
  from KekikStream.Core import PluginBase, SearchResult, SeriesInfo, Episode
4
4
  from parsel import Selector
5
5
  from json import loads
6
+ from urllib.parse import urlparse, urlunparse
6
7
 
7
8
  class Dizilla(PluginBase):
8
9
  name = "Dizilla"
@@ -43,6 +44,16 @@ class Dizilla(PluginBase):
43
44
  for veri in arama_veri
44
45
  ]
45
46
 
47
+ async def url_base_degis(self, eski_url:str, yeni_base:str) -> str:
48
+ parsed_url = urlparse(eski_url)
49
+ parsed_yeni_base = urlparse(yeni_base)
50
+ yeni_url = parsed_url._replace(
51
+ scheme = parsed_yeni_base.scheme,
52
+ netloc = parsed_yeni_base.netloc
53
+ )
54
+
55
+ return urlunparse(yeni_url)
56
+
46
57
  async def load_item(self, url: str) -> SeriesInfo:
47
58
  istek = await self.oturum.get(url)
48
59
  secici = Selector(istek.text)
@@ -67,7 +78,7 @@ class Dizilla(PluginBase):
67
78
  season = sezon.get("seasonNumber"),
68
79
  episode = bolum.get("episodeNumber"),
69
80
  title = bolum.get("name"),
70
- url = bolum.get("url"),
81
+ url = await self.url_base_degis(bolum.get("url"), self.main_url),
71
82
  ))
72
83
 
73
84
  return SeriesInfo(
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: KekikStream
3
- Version: 0.6.4
3
+ Version: 0.6.6
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.1
2
2
  Name: KekikStream
3
- Version: 0.6.4
3
+ Version: 0.6.6
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 = "0.6.4",
9
+ version = "0.6.6",
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