StreamingCommunity 3.3.6__py3-none-any.whl → 3.3.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.

Potentially problematic release.


This version of StreamingCommunity might be problematic. Click here for more details.

Files changed (48) hide show
  1. StreamingCommunity/Api/Site/altadefinizione/film.py +1 -1
  2. StreamingCommunity/Api/Site/altadefinizione/series.py +1 -1
  3. StreamingCommunity/Api/Site/animeunity/serie.py +2 -2
  4. StreamingCommunity/Api/Site/animeworld/film.py +1 -1
  5. StreamingCommunity/Api/Site/animeworld/serie.py +2 -2
  6. StreamingCommunity/Api/Site/crunchyroll/film.py +3 -2
  7. StreamingCommunity/Api/Site/crunchyroll/series.py +3 -2
  8. StreamingCommunity/Api/Site/crunchyroll/site.py +0 -8
  9. StreamingCommunity/Api/Site/crunchyroll/util/get_license.py +11 -105
  10. StreamingCommunity/Api/Site/guardaserie/series.py +1 -1
  11. StreamingCommunity/Api/Site/mediasetinfinity/film.py +1 -1
  12. StreamingCommunity/Api/Site/mediasetinfinity/series.py +7 -9
  13. StreamingCommunity/Api/Site/mediasetinfinity/site.py +29 -66
  14. StreamingCommunity/Api/Site/mediasetinfinity/util/ScrapeSerie.py +5 -1
  15. StreamingCommunity/Api/Site/mediasetinfinity/util/get_license.py +151 -233
  16. StreamingCommunity/Api/Site/raiplay/film.py +2 -10
  17. StreamingCommunity/Api/Site/raiplay/series.py +2 -10
  18. StreamingCommunity/Api/Site/raiplay/site.py +1 -0
  19. StreamingCommunity/Api/Site/raiplay/util/ScrapeSerie.py +7 -1
  20. StreamingCommunity/Api/Site/streamingcommunity/film.py +1 -1
  21. StreamingCommunity/Api/Site/streamingcommunity/series.py +1 -1
  22. StreamingCommunity/Api/Site/streamingwatch/film.py +1 -1
  23. StreamingCommunity/Api/Site/streamingwatch/series.py +1 -1
  24. StreamingCommunity/Api/Template/loader.py +158 -0
  25. StreamingCommunity/Lib/Downloader/DASH/downloader.py +267 -51
  26. StreamingCommunity/Lib/Downloader/DASH/segments.py +46 -15
  27. StreamingCommunity/Lib/Downloader/HLS/downloader.py +51 -36
  28. StreamingCommunity/Lib/Downloader/HLS/segments.py +105 -25
  29. StreamingCommunity/Lib/Downloader/MP4/downloader.py +12 -13
  30. StreamingCommunity/Lib/FFmpeg/command.py +18 -81
  31. StreamingCommunity/Lib/FFmpeg/util.py +14 -10
  32. StreamingCommunity/Lib/M3U8/estimator.py +13 -12
  33. StreamingCommunity/Lib/M3U8/parser.py +16 -16
  34. StreamingCommunity/Upload/update.py +2 -4
  35. StreamingCommunity/Upload/version.py +2 -2
  36. StreamingCommunity/Util/config_json.py +3 -132
  37. StreamingCommunity/Util/installer/bento4_install.py +21 -31
  38. StreamingCommunity/Util/installer/device_install.py +0 -1
  39. StreamingCommunity/Util/installer/ffmpeg_install.py +0 -1
  40. StreamingCommunity/Util/message.py +8 -9
  41. StreamingCommunity/Util/os.py +0 -8
  42. StreamingCommunity/run.py +4 -44
  43. {streamingcommunity-3.3.6.dist-info → streamingcommunity-3.3.8.dist-info}/METADATA +1 -3
  44. {streamingcommunity-3.3.6.dist-info → streamingcommunity-3.3.8.dist-info}/RECORD +48 -47
  45. {streamingcommunity-3.3.6.dist-info → streamingcommunity-3.3.8.dist-info}/WHEEL +0 -0
  46. {streamingcommunity-3.3.6.dist-info → streamingcommunity-3.3.8.dist-info}/entry_points.txt +0 -0
  47. {streamingcommunity-3.3.6.dist-info → streamingcommunity-3.3.8.dist-info}/licenses/LICENSE +0 -0
  48. {streamingcommunity-3.3.6.dist-info → streamingcommunity-3.3.8.dist-info}/top_level.txt +0 -0
@@ -4,7 +4,6 @@ import os
4
4
  import shutil
5
5
  import zipfile
6
6
  import logging
7
- import subprocess
8
7
  from typing import Optional
9
8
 
10
9
 
@@ -150,54 +149,45 @@ class Bento4Downloader:
150
149
  def check_mp4decrypt() -> Optional[str]:
151
150
  """
152
151
  Check for mp4decrypt in the system and download if not found.
153
- Order: system PATH (where/which) -> binary directory -> download
152
+ Order: binary directory -> system PATH -> download
154
153
 
155
154
  Returns:
156
155
  Optional[str]: Path to mp4decrypt executable or None if not found/downloaded
157
156
  """
158
157
  try:
159
158
  system_platform = binary_paths.system
160
-
161
- # STEP 1: Check system PATH
162
- console.print("[cyan]Checking for mp4decrypt in system PATH...[/]")
163
159
  mp4decrypt_name = "mp4decrypt.exe" if system_platform == "windows" else "mp4decrypt"
164
- mp4decrypt_path = None
165
-
166
- if system_platform == 'windows':
167
- try:
168
- mp4decrypt_path = subprocess.check_output(
169
- ['where', mp4decrypt_name], stderr=subprocess.DEVNULL, text=True
170
- ).strip().split('\n')[0]
171
-
172
- if mp4decrypt_path:
173
- logging.info("mp4decrypt found in Windows system PATH")
174
- return mp4decrypt_path
175
-
176
- except subprocess.CalledProcessError:
177
- logging.info("mp4decrypt not found in Windows system PATH")
178
160
 
179
- else:
180
- mp4decrypt_path = shutil.which(mp4decrypt_name)
181
-
182
- if mp4decrypt_path:
183
- logging.info("mp4decrypt found in system PATH")
184
- return mp4decrypt_path
185
-
186
- # STEP 2: Check in binary directory
187
- console.print("[cyan]Checking for mp4decrypt in binary directory...[/]")
161
+ # STEP 1: Check binary directory FIRST (fastest - single file check)
188
162
  binary_dir = binary_paths.get_binary_directory()
189
163
  local_path = os.path.join(binary_dir, mp4decrypt_name)
190
164
 
191
- if os.path.exists(local_path) and os.access(local_path, os.X_OK):
165
+ if os.path.isfile(local_path):
166
+
167
+ # Only check execution permissions on Unix systems
168
+ if system_platform != 'windows' and not os.access(local_path, os.X_OK):
169
+ try:
170
+ os.chmod(local_path, 0o755)
171
+ except Exception:
172
+ pass # Ignore chmod errors
173
+
192
174
  logging.info("mp4decrypt found in binary directory")
193
175
  return local_path
194
176
 
195
- # STEP 3: Download if not found
177
+ # STEP 2: Check system PATH (slower - searches multiple directories)
178
+ mp4decrypt_path = shutil.which(mp4decrypt_name)
179
+
180
+ if mp4decrypt_path:
181
+ logging.info("mp4decrypt found in system PATH")
182
+ return mp4decrypt_path
183
+
184
+ # STEP 3: Download if not found anywhere
196
185
  console.print("[cyan]mp4decrypt not found. Downloading...[/]")
197
186
  downloader = Bento4Downloader()
198
187
  extracted_files = downloader.download()
188
+
199
189
  return extracted_files[0] if extracted_files else None
200
190
 
201
191
  except Exception as e:
202
192
  logging.error(f"Error checking or downloading mp4decrypt: {e}")
203
- return None
193
+ return None
@@ -50,7 +50,6 @@ class DeviceDownloader:
50
50
  def _check_existing_wvd(self) -> Optional[str]:
51
51
  """Check for existing WVD files in binary directory."""
52
52
  try:
53
- console.print("[cyan]Checking for existing device.wvd files...")
54
53
  if not os.path.exists(self.base_dir):
55
54
  return None
56
55
 
@@ -60,7 +60,6 @@ class FFMPEGDownloader:
60
60
  try:
61
61
 
62
62
  # STEP 1: Check system PATH first
63
- console.print("[cyan]Checking for FFmpeg in system PATH...[/]")
64
63
  if self.os_name == 'windows':
65
64
  try:
66
65
  ffmpeg_path = subprocess.check_output(
@@ -22,18 +22,17 @@ def start_message():
22
22
  """Display a stylized start message in the console."""
23
23
 
24
24
  msg = r'''
25
- ___ _____ __ _
26
- / | ______________ _ ______ ______ _ __ / ___// /_________ ____ _____ ___ (_)___ ____ _
27
- / /| | / ___/ ___/ __ \ | /| / / __ `/ ___/ | |/_/ \__ \/ __/ ___/ _ \/ __ `/ __ `__ \/ / __ \/ __ `/
28
- / ___ |/ / / / / /_/ / |/ |/ / /_/ / / _> < ___/ / /_/ / / __/ /_/ / / / / / / / / / / /_/ /
29
- /_/ |_/_/ /_/ \____/|__/|__/\__,_/_/ /_/|_| /____/\__/_/ \___/\__,_/_/ /_/ /_/_/_/ /_/\__, /
30
- /____/
25
+ [red]+[cyan]=======================================================================================[red]+[purple]
26
+ | ___ ______ _ |
27
+ | / _ | ___________ _ _____ _____ __ __ / __/ /________ ___ ___ _ (_)__ ___ _ |
28
+ | / __ |/ __/ __/ _ \ |/|/ / _ `/ __/ \ \ / _\ \/ __/ __/ -_) _ `/ ' \/ / _ \/ _ `/ |
29
+ | /_/ |_/_/ /_/ \___/__,__/\_,_/_/ /_\_\ /___/\__/_/ \__/\_,_/_/_/_/_/_//_/\_, / |
30
+ | /___/ |
31
+ [red]+[cyan]=======================================================================================[red]+
31
32
  '''.rstrip()
32
33
 
33
34
  if CLEAN:
34
35
  os.system("cls" if platform.system() == 'Windows' else "clear")
35
36
 
36
37
  if SHOW:
37
- console.print(f"[purple]{msg}")
38
- separator = "_" * (console.width - 2)
39
- console.print(f"[cyan]{separator}[/cyan]\n")
38
+ console.print(f"[purple]{msg}")
@@ -1,13 +1,11 @@
1
1
  # 24.01.24
2
2
 
3
- import io
4
3
  import os
5
4
  import shutil
6
5
  import logging
7
6
  import socket
8
7
  import platform
9
8
  import inspect
10
- import contextlib
11
9
 
12
10
 
13
11
  # External library
@@ -316,7 +314,6 @@ class OsSummary:
316
314
  self.ffmpeg_path, self.ffprobe_path, _ = check_ffmpeg()
317
315
  self.mp4decrypt_path = check_mp4decrypt()
318
316
  self.wvd_path = check_device_wvd_path()
319
-
320
317
  self._display_binary_paths()
321
318
 
322
319
  def _display_binary_paths(self):
@@ -342,11 +339,6 @@ internet_manager = InternetManager()
342
339
  os_summary = OsSummary()
343
340
 
344
341
 
345
- @contextlib.contextmanager
346
- def suppress_output():
347
- with contextlib.redirect_stdout(io.StringIO()):
348
- yield
349
-
350
342
  def get_call_stack():
351
343
  """Retrieves the current call stack with details about each call."""
352
344
  stack = inspect.stack()
StreamingCommunity/run.py CHANGED
@@ -2,8 +2,6 @@
2
2
 
3
3
  import os
4
4
  import sys
5
- import time
6
- import glob
7
5
  import logging
8
6
  import platform
9
7
  import argparse
@@ -12,7 +10,7 @@ import threading
12
10
  import asyncio
13
11
  import subprocess
14
12
  from urllib.parse import urlparse
15
- from typing import Callable, Dict, Tuple
13
+ from typing import Callable, Tuple
16
14
 
17
15
 
18
16
  # External library
@@ -22,6 +20,7 @@ from rich.prompt import Prompt
22
20
 
23
21
  # Internal utilities
24
22
  from .global_search import global_search
23
+ from StreamingCommunity.Api.Template.loader import load_search_functions
25
24
  from StreamingCommunity.Util.message import start_message
26
25
  from StreamingCommunity.Util.config_json import config_manager
27
26
  from StreamingCommunity.Util.os import internet_manager, os_manager
@@ -58,42 +57,6 @@ def run_function(func: Callable[..., None], close_console: bool = False, search_
58
57
  func(search_terms)
59
58
 
60
59
 
61
- def load_search_functions() -> Dict[str, Tuple]:
62
- """Load and return all available search functions from site modules."""
63
- loaded_functions = {}
64
- excluded_sites = {"cb01new", "guardaserie", "ilcorsaronero", "mostraguarda"} if TELEGRAM_BOT else set()
65
-
66
- # Determine base path
67
- base_path = os.path.join(sys._MEIPASS, "StreamingCommunity") if getattr(sys, 'frozen', False) else os.path.dirname(__file__)
68
- api_dir = os.path.join(base_path, 'Api', 'Site')
69
-
70
- # Get all modules with their indices and sort them
71
- modules = []
72
- for init_file in glob.glob(os.path.join(api_dir, '*', '__init__.py')):
73
- module_name = os.path.basename(os.path.dirname(init_file))
74
-
75
- if module_name in excluded_sites:
76
- continue
77
-
78
- try:
79
- mod = importlib.import_module(f'StreamingCommunity.Api.Site.{module_name}')
80
- if not getattr(mod, '_deprecate', False):
81
- modules.append((module_name, getattr(mod, 'indice'), getattr(mod, '_useFor')))
82
- logging.info(f"Load module name: {module_name}")
83
- except Exception as e:
84
- console.print(f"[red]Failed to import module {module_name}: {str(e)}")
85
-
86
- # Sort by index and load search functions
87
- for module_name, _, use_for in sorted(modules, key=lambda x: x[1]):
88
- try:
89
- mod = importlib.import_module(f'StreamingCommunity.Api.Site.{module_name}')
90
- loaded_functions[f'{module_name}_search'] = (getattr(mod, 'search'), use_for)
91
- except Exception as e:
92
- console.print(f"[red]Failed to load search function from module {module_name}: {str(e)}")
93
-
94
- return loaded_functions
95
-
96
-
97
60
  def initialize():
98
61
  """Initialize the application with system checks and setup."""
99
62
  start_message()
@@ -316,7 +279,7 @@ def force_exit():
316
279
  os._exit(0)
317
280
 
318
281
 
319
- def check_dns_and_exit_if_needed():
282
+ def check_dns():
320
283
  """Check DNS configuration and exit if required."""
321
284
  if BYPASS_DNS:
322
285
  return
@@ -508,16 +471,13 @@ def main(script_id=0):
508
471
  if TELEGRAM_BOT:
509
472
  get_bot_instance().send_message(f"Avviato script {script_id}", None)
510
473
 
511
- start = time.time()
512
474
  Logger()
513
475
  execute_hooks('pre_run')
514
476
  initialize()
515
477
 
516
478
  try:
517
- check_dns_and_exit_if_needed()
518
-
479
+ check_dns()
519
480
  search_functions = load_search_functions()
520
- logging.info(f"Load module in: {time.time() - start} s")
521
481
 
522
482
  parser = setup_argument_parser(search_functions)
523
483
  args = parser.parse_args()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: StreamingCommunity
3
- Version: 3.3.6
3
+ Version: 3.3.8
4
4
  Home-page: https://github.com/Arrowar/StreamingCommunity
5
5
  Author: Arrowar
6
6
  Project-URL: Bug Reports, https://github.com/Arrowar/StreamingCommunity/issues
@@ -14,7 +14,6 @@ Requires-Dist: bs4
14
14
  Requires-Dist: rich
15
15
  Requires-Dist: tqdm
16
16
  Requires-Dist: m3u8
17
- Requires-Dist: certifi
18
17
  Requires-Dist: psutil
19
18
  Requires-Dist: unidecode
20
19
  Requires-Dist: curl_cffi
@@ -25,7 +24,6 @@ Requires-Dist: ua-generator
25
24
  Requires-Dist: qbittorrent-api
26
25
  Requires-Dist: pyTelegramBotAPI
27
26
  Requires-Dist: pywidevine
28
- Requires-Dist: seleniumbase
29
27
  Dynamic: author
30
28
  Dynamic: description
31
29
  Dynamic: description-content-type
@@ -1,6 +1,6 @@
1
1
  StreamingCommunity/__init__.py,sha256=kOpFRfO3jz3gP2QjgPC_G85Z3rsMwMnsNa0POXMnDng,382
2
2
  StreamingCommunity/global_search.py,sha256=ip3D0OKNRTXHpe_Wy7v2KM-yNZdnnbG5FOBYSSk6wB8,12401
3
- StreamingCommunity/run.py,sha256=VlHFI94JH1hUu1nl8Harte8_r0YQedcC6t9MRUIUNwE,21266
3
+ StreamingCommunity/run.py,sha256=p7RYZlHhIHzPs8n_6z7f0yikH5TEd8KeC9UIpiRJ5-c,19494
4
4
  StreamingCommunity/Api/Player/hdplayer.py,sha256=uQGU8ZVEk7qwwu1v4fjxScsP2x9NIHc7rRguXB1Fk2c,1942
5
5
  StreamingCommunity/Api/Player/mediapolisvod.py,sha256=Npm3HHUO5Wav8c2QX9E2c3SSW6d1STJw-kK8kHRF-zo,2403
6
6
  StreamingCommunity/Api/Player/supervideo.py,sha256=AuAA6eXYODJN-ytdvKjqlzZLOHpwx3kwgy1CSiogs-o,5388
@@ -9,55 +9,56 @@ StreamingCommunity/Api/Player/vixcloud.py,sha256=0DnukAIBqGqTmL9I6JkpAkHLMf1UG1D
9
9
  StreamingCommunity/Api/Player/Helper/Vixcloud/js_parser.py,sha256=U-8QlD5kGzIk3-4t4D6QyYmiDe8UBrSuVi1YHRQb7AU,4295
10
10
  StreamingCommunity/Api/Player/Helper/Vixcloud/util.py,sha256=WjpNA-ohE6AIwYOVzacYqy7CR3fXfdf7PfIp69vk8js,5343
11
11
  StreamingCommunity/Api/Site/altadefinizione/__init__.py,sha256=sB9NyE30zwDG0oc8Cw0gioM-UTLQs7KmazEDSAxszI8,5346
12
- StreamingCommunity/Api/Site/altadefinizione/film.py,sha256=CQG1C9RGbPm_x89xgyTS8IqcP-lihNqCDY9ANghOlhE,3798
13
- StreamingCommunity/Api/Site/altadefinizione/series.py,sha256=_O2PVAQl-k9tUOWcQAbZLTJbihr0JC9zyBNVdnk0T_E,8408
12
+ StreamingCommunity/Api/Site/altadefinizione/film.py,sha256=wrskk9hL-3uFlJ65gnIEdj8cdpgQnlOZJguIgyPnxWY,3800
13
+ StreamingCommunity/Api/Site/altadefinizione/series.py,sha256=aTc23StMrh16Yu70a41jUD7sKeyzEegP2_ws7m_DtYI,8410
14
14
  StreamingCommunity/Api/Site/altadefinizione/site.py,sha256=nrDmENnvWbW7iNO7OIGpQWJttzFGipZg0dsC8GiSEBU,2864
15
15
  StreamingCommunity/Api/Site/altadefinizione/util/ScrapeSerie.py,sha256=9iulNlnNAhTfI5iKNW3I6pZqYeYwovAswa13L3LPGDM,4251
16
16
  StreamingCommunity/Api/Site/animeunity/__init__.py,sha256=KArwW7J5rHjEoNfZz4SmS_IjfJqljon_ACIvaxouzqc,5228
17
17
  StreamingCommunity/Api/Site/animeunity/film.py,sha256=Vqg6yag2siR-Y3ougBsV8mzdQXChxg6ghz_KVXFQ3pE,998
18
- StreamingCommunity/Api/Site/animeunity/serie.py,sha256=XWhn2oCMjUIO1Fif0u3uFCGLKYqlyxj6XL5T9d-AAP8,5738
18
+ StreamingCommunity/Api/Site/animeunity/serie.py,sha256=gypwpByTXPe1yhx9WfJVlDV-Urtm7P9Sz5O435ZWhvQ,5742
19
19
  StreamingCommunity/Api/Site/animeunity/site.py,sha256=GLULPQATMHcXiH99d772v1ICH-PnnZgSM3q5__eN-gs,4977
20
20
  StreamingCommunity/Api/Site/animeunity/util/ScrapeSerie.py,sha256=UladSvOlTEVLiV0-rAz45zrET5qRHMuTGuKEpeQoumU,3872
21
21
  StreamingCommunity/Api/Site/animeworld/__init__.py,sha256=f3B52eUPXRB9Jet4Y-VxhUbJMFT7bTgtp9Hs_QGUTUY,5145
22
- StreamingCommunity/Api/Site/animeworld/film.py,sha256=Ysp0k5AlrOsl19S9LV4nwVg8cjFf5w0FZRO9CiO6NxA,1748
23
- StreamingCommunity/Api/Site/animeworld/serie.py,sha256=GhidFQ7q9UUYSStw27doxFq5dt8-D9cE9GGrkOXdyf4,3534
22
+ StreamingCommunity/Api/Site/animeworld/film.py,sha256=iCnBHxam5umuCJ6TnknXrEXtgVYUKFkWqXd4L3E44T0,1750
23
+ StreamingCommunity/Api/Site/animeworld/serie.py,sha256=wmma2mlJd76SQpKRxPGlxWE8dw5BEzJGlBxc_9QR2wk,3538
24
24
  StreamingCommunity/Api/Site/animeworld/site.py,sha256=Zdp6ayA1L6hS1t0q4fclHs7J1eiD16Ta9isTc13Zye8,3746
25
25
  StreamingCommunity/Api/Site/animeworld/util/ScrapeSerie.py,sha256=S6sLtQt4Wvp4IVDho1uAXL8_-bbdj-RTRA1D7x9V8n8,3591
26
26
  StreamingCommunity/Api/Site/crunchyroll/__init__.py,sha256=P3OfAaROt_vSKPA-abfKkYn1LIfwUhfyC_0TnsBfqxU,5344
27
- StreamingCommunity/Api/Site/crunchyroll/film.py,sha256=MgA8bwJEf6unT_uBBsLpMqRdbctkLYLGeBB-_fX1wvk,2615
28
- StreamingCommunity/Api/Site/crunchyroll/series.py,sha256=XiAEYrTjhn7d3au1MtCQrq8yv2CxWWFJdNGwlDqbiXI,7437
29
- StreamingCommunity/Api/Site/crunchyroll/site.py,sha256=udMWlEi4fVG-yVcrsEP2JXdRZeYB_xwETTpPDzyBOno,4072
27
+ StreamingCommunity/Api/Site/crunchyroll/film.py,sha256=Yknhduczy56eGu7QJ4exSgjnIJDeopho_zszULzxiWQ,2666
28
+ StreamingCommunity/Api/Site/crunchyroll/series.py,sha256=1NGJTso62jl12KDI6Q1ZErHM90GMHQT8JzUrhniNuHo,7488
29
+ StreamingCommunity/Api/Site/crunchyroll/site.py,sha256=Y0YF0fqF2ZY0w_O_eMa-dNADFbshVT5AUcSqtqCktI8,3687
30
30
  StreamingCommunity/Api/Site/crunchyroll/util/ScrapeSerie.py,sha256=ZY6z4pT5q7igiNZnJAvE9x0WiORTvFSH-U_CpqOzusA,7855
31
- StreamingCommunity/Api/Site/crunchyroll/util/get_license.py,sha256=KpVvJbGUTLeVD-tt8r7ajBPWVT7Tm6GrKwzpW8CS-tg,6881
31
+ StreamingCommunity/Api/Site/crunchyroll/util/get_license.py,sha256=60qwmDuecjgqoxqpRF4JfLtu0As2Q4s8HUcOIMMiBkc,4063
32
32
  StreamingCommunity/Api/Site/guardaserie/__init__.py,sha256=wqW3AkQJPLszZtcNCjqZjnDXVRrr8cUaJuHUh1WjJV0,5125
33
- StreamingCommunity/Api/Site/guardaserie/series.py,sha256=yhV2tgxFYcl9i5CDOFxszGmRsbw9fvr8M1f7PssiTtE,6694
33
+ StreamingCommunity/Api/Site/guardaserie/series.py,sha256=-ExCTCMeC6GcIJS9m2qkl46eXozOtDhT9hI8WJFvF-Q,6696
34
34
  StreamingCommunity/Api/Site/guardaserie/site.py,sha256=r-27X8V6c6RusWJy3geMri4Ox-BfMdBne0hFwKS5wlI,2174
35
35
  StreamingCommunity/Api/Site/guardaserie/util/ScrapeSerie.py,sha256=4wk2TVb4YDoPrhR2uuNijYuOpSt9mhcxwcXhmwTHPUY,4396
36
36
  StreamingCommunity/Api/Site/mediasetinfinity/__init__.py,sha256=0sssYE2ZcKLkoc3dq-6SUAWzxtW5gFP36KGWxWnfM6s,5265
37
- StreamingCommunity/Api/Site/mediasetinfinity/film.py,sha256=ZfLbc3631UwmBThtA_X0nQew__hSl1l5ASOr9IdS71w,2334
38
- StreamingCommunity/Api/Site/mediasetinfinity/series.py,sha256=SNM13Bl9AQeA2edAJk4czAfeKpa0eQW9KLSWchuG8jw,7026
39
- StreamingCommunity/Api/Site/mediasetinfinity/site.py,sha256=ZtM0HVV2d92MbQFsU1YgCobNWby0Bnz2v_Jmw7b_qak,4691
40
- StreamingCommunity/Api/Site/mediasetinfinity/util/ScrapeSerie.py,sha256=PY1_hKDZlb5FWub-Fee479-PNyckaVmasNwH6Er2wlE,10183
37
+ StreamingCommunity/Api/Site/mediasetinfinity/film.py,sha256=K5thRgQ3ps7aHMwPzHzVj53sr3k_QGH2Gol0SKR3Jrw,2336
38
+ StreamingCommunity/Api/Site/mediasetinfinity/series.py,sha256=ZBu897UFI90nA97bOZ-4s0r0-iaPnizEDz2IbAZkdXc,7018
39
+ StreamingCommunity/Api/Site/mediasetinfinity/site.py,sha256=W0eAZAxtPP1KK7DApvc34N0TwZdr_kZow5SZwRJLDFo,3352
40
+ StreamingCommunity/Api/Site/mediasetinfinity/util/ScrapeSerie.py,sha256=9ATUZbRfZVW1yYN-BQKaISbtMQCuEqk0gtJQlQr0GIk,10334
41
41
  StreamingCommunity/Api/Site/mediasetinfinity/util/fix_mpd.py,sha256=B7uZfQ8X4p8KsiPVangFSs5rKKKpA3tavjPCdNrqyCc,1712
42
- StreamingCommunity/Api/Site/mediasetinfinity/util/get_license.py,sha256=cD1tnYSd1t_bZzLSHssbRqFfl1cswAxeUAvtoTUyDbU,12745
42
+ StreamingCommunity/Api/Site/mediasetinfinity/util/get_license.py,sha256=MzCjQxzhuKINMQwSzeAgZeQwhdOviylDZOPDcjQwIKI,9408
43
43
  StreamingCommunity/Api/Site/raiplay/__init__.py,sha256=RetTL3hWU9EpQJpOvV92xr57wI_dQwm40KRgJAQ_vfA,5269
44
- StreamingCommunity/Api/Site/raiplay/film.py,sha256=Ep1Kcbvm2nZoHvaxW5Qbg4FBl9QZORM-NEi2obhQyos,3029
45
- StreamingCommunity/Api/Site/raiplay/series.py,sha256=YOi63NZblAKwbfqfL8ZmC7RkCMH2ye7A7Rz80jeR1jE,8000
46
- StreamingCommunity/Api/Site/raiplay/site.py,sha256=LbqMJHfAdXllxfgugjyfX9d_03fxmVidpUk9kmJ_so4,3284
47
- StreamingCommunity/Api/Site/raiplay/util/ScrapeSerie.py,sha256=LTJs8cngV-WU_CmNVa37U5t7GCo8ofISE3qnenPpWY8,6152
44
+ StreamingCommunity/Api/Site/raiplay/film.py,sha256=bN7BTrQOFweI-4icnVF8b4gE-A_fYEWlpeDM7xmRR8k,2675
45
+ StreamingCommunity/Api/Site/raiplay/series.py,sha256=YEw53lYAR7BGyQbpPhjMVavBg97HRLym7JKLA0Nzz9s,7646
46
+ StreamingCommunity/Api/Site/raiplay/site.py,sha256=s0ea7GmY4nrCm-j-Vvuc2Gpsv-521ifCfjM6jQuDqP4,3367
47
+ StreamingCommunity/Api/Site/raiplay/util/ScrapeSerie.py,sha256=JE4E4JiNcAJSA7g8hiPdi7BB_HaLlhFv38y05lQPUCU,6463
48
48
  StreamingCommunity/Api/Site/raiplay/util/get_license.py,sha256=96Q5aSWhtxtmQl2yzylL-1x3jY24UpLLZlEE6YrO_gs,978
49
49
  StreamingCommunity/Api/Site/streamingcommunity/__init__.py,sha256=EHe8TY4Fcn064PlJ4ubDwr6N0muilfUMpK5-yyOwp-A,5425
50
- StreamingCommunity/Api/Site/streamingcommunity/film.py,sha256=aA0tsDc5GCFFkrn_s2QKNcnyBYhK2S5OnDx29P1_rhA,2779
51
- StreamingCommunity/Api/Site/streamingcommunity/series.py,sha256=eLCeVjur2w2J1PgYzhe8dIJYGZus6YEyQr5H0YXazH4,9055
50
+ StreamingCommunity/Api/Site/streamingcommunity/film.py,sha256=b03gI_JTEDPQirlQexG7cPSU8WIgw3HKjlJ25m9Abko,2781
51
+ StreamingCommunity/Api/Site/streamingcommunity/series.py,sha256=cXGpLg-9vLZ8RCsneR4H6oFO-TqAcAp2nJeP5mEWw14,9057
52
52
  StreamingCommunity/Api/Site/streamingcommunity/site.py,sha256=YlrxE1ktC3obpwra8PNBZizZvaYLCh_iHWB_bD-3AaU,3941
53
53
  StreamingCommunity/Api/Site/streamingcommunity/util/ScrapeSerie.py,sha256=b-PWO1fP68yfptLb5X3i4M1PFZHKkqJh32yHgKsoIGs,5684
54
54
  StreamingCommunity/Api/Site/streamingwatch/__init__.py,sha256=kdZBQxQu9KIKmU0ml4Tpc2wvFak05Y8dk1ewGKXceeg,5425
55
- StreamingCommunity/Api/Site/streamingwatch/film.py,sha256=B_9z9xzfuqEbzv-eVHuadvOKTcEiHhRU92Gk_f2u7Zs,1693
56
- StreamingCommunity/Api/Site/streamingwatch/series.py,sha256=5R7FXJ-Z2A5A_R_LnoJVp05G1PGnKOe5cfsW7s1hA7M,6373
55
+ StreamingCommunity/Api/Site/streamingwatch/film.py,sha256=sUWgZQt6cTIR3e12LAFBq5CcunaDwecxMIp0uj2xcGk,1695
56
+ StreamingCommunity/Api/Site/streamingwatch/series.py,sha256=2mc3DlVY_VAQbNND9Ruba82m209Mieohtc9gmUbOCBE,6353
57
57
  StreamingCommunity/Api/Site/streamingwatch/site.py,sha256=imwsj7Ah6M8PmGFFUmi_A7guSXEI-X5mUH7Qy796kvw,3284
58
58
  StreamingCommunity/Api/Site/streamingwatch/util/ScrapeSerie.py,sha256=h28W2Q_cZhBe4v91dvUDYbLBUV98i2Ghb1OOhVq3Iuk,4289
59
59
  StreamingCommunity/Api/Template/__init__.py,sha256=fiDHu2yUk3Jk5CWmmnCJNy9fRLbq8RhHB_20NDD12tA,84
60
60
  StreamingCommunity/Api/Template/config_loader.py,sha256=2RT_0mqQmWzXM4rYaqss-yhXztYAcfNkTalFPjzv270,2056
61
+ StreamingCommunity/Api/Template/loader.py,sha256=AmEv_hxJ8lyEzV2Nx72BoawzXNHUFr5VjL85oj0hmAo,5472
61
62
  StreamingCommunity/Api/Template/site.py,sha256=S3DcEADTKM7OSDlrreMf33zDKK7HBStRImuQwg2aoRY,4937
62
63
  StreamingCommunity/Api/Template/Class/SearchType.py,sha256=xp4vYKYHoXQF28fvWm0mk8XHvK9PkOcuWJXC5fbk4Gg,2529
63
64
  StreamingCommunity/Api/Template/Util/__init__.py,sha256=v23VkosPNOQG5XbDkyCx5shEVJvRJffgkAF_Am5zMQc,377
@@ -65,21 +66,21 @@ StreamingCommunity/Api/Template/Util/manage_ep.py,sha256=EFu5_7N_Fd6fVF7Ix14uWfr
65
66
  StreamingCommunity/Lib/Downloader/__init__.py,sha256=Zh92xTvBIEIjNQN22iXItG7_VqiDGbOpO5gOZDBdGxc,288
66
67
  StreamingCommunity/Lib/Downloader/DASH/cdm_helpher.py,sha256=22kh7jvnhU-_mPM_EHgaDxurmAUuOLDc40DrZ2_3MN0,4037
67
68
  StreamingCommunity/Lib/Downloader/DASH/decrypt.py,sha256=q5ARjb-wsJ0oxeNc-h8jB-LQjQH-idjHAE0ZP4hwNdg,2442
68
- StreamingCommunity/Lib/Downloader/DASH/downloader.py,sha256=VOvu7GG-DTnxc0C5g1In9niFsPTsBCpvPDpWrwOvgkw,11206
69
+ StreamingCommunity/Lib/Downloader/DASH/downloader.py,sha256=yjxgyj81OkgcUABxO-KNpnijvvLrIarhCfkDE-iKLqE,20361
69
70
  StreamingCommunity/Lib/Downloader/DASH/parser.py,sha256=QUyYhmu-zI2GieiNZaoOoDVPTclSKXsrdeToAtbC9yI,9858
70
- StreamingCommunity/Lib/Downloader/DASH/segments.py,sha256=1CIe3mLXTWlhAEchB-L0wAP39l7qebjsaMbeGmlFY_s,15004
71
- StreamingCommunity/Lib/Downloader/HLS/downloader.py,sha256=qrPBJHbCM-52N43FLNlcetxqK2HWBDFd3cRenNOOxdg,27753
72
- StreamingCommunity/Lib/Downloader/HLS/segments.py,sha256=o-Ian-0KB8py68mk0ywXrUqhGthYpbB6t7rhkdbgc4Q,19242
73
- StreamingCommunity/Lib/Downloader/MP4/downloader.py,sha256=_z61uQVnlfh-ktWYTisfbg_a4C3tpK7MO8HUdgLhTpI,8060
71
+ StreamingCommunity/Lib/Downloader/DASH/segments.py,sha256=OTUjhiIU6cqG0ouM5Y3DGEQXJS3i_s79RlOKHLi0fGw,16794
72
+ StreamingCommunity/Lib/Downloader/HLS/downloader.py,sha256=HmjOk_jkwCAWYfIrzbnx6TRHweElUFLg1OT2zwoPGgQ,28452
73
+ StreamingCommunity/Lib/Downloader/HLS/segments.py,sha256=D8WtzfecZ9qgZ8ePPwYBV448mDvQBbfX4G9WFeJJVrw,22715
74
+ StreamingCommunity/Lib/Downloader/MP4/downloader.py,sha256=KoxcaOkldRI9f7AAwJkWqN983vz9xLA5jwEeq6Xgmvo,7773
74
75
  StreamingCommunity/Lib/Downloader/TOR/downloader.py,sha256=tYOCuKkKDcTIJ-2bGIeplovRkLTdp89i8lUvJs_N9jc,19133
75
76
  StreamingCommunity/Lib/FFmpeg/__init__.py,sha256=NZmOXpnc5jvdvjNnHPxvj5bzp0GUuNMXd00Fcy4rQPI,258
76
77
  StreamingCommunity/Lib/FFmpeg/capture.py,sha256=3gPNgndHABXSBSJOxWhijwRIs_q-GTTmFO5XB0OdskI,5038
77
- StreamingCommunity/Lib/FFmpeg/command.py,sha256=G_QxRAVMY6ll21U6S9R3I6cyGGzN14j_iWAsaGGyQeM,12756
78
- StreamingCommunity/Lib/FFmpeg/util.py,sha256=_AcwPNdyQxPLHVnR3KjVq_ugAK3M39jnJpqGVUGudMo,8804
78
+ StreamingCommunity/Lib/FFmpeg/command.py,sha256=Xzz_BtNGg5zH_8IhU7JsmgehzJlJHYs5DNDvb7MZaNs,10425
79
+ StreamingCommunity/Lib/FFmpeg/util.py,sha256=ISSNKvK61R0pGc9w6juK6S3jBb9SvrdTlTu8ycxg8FY,8903
79
80
  StreamingCommunity/Lib/M3U8/__init__.py,sha256=Zxij4WFCxjwyfswUfBv0oys_o0vQpAL5PoK5TGG_StY,288
80
81
  StreamingCommunity/Lib/M3U8/decryptor.py,sha256=0VPMWbfwP9aEr4Y8OYi-e4o0ucMeCnV9HyuiOWxu_sE,2361
81
- StreamingCommunity/Lib/M3U8/estimator.py,sha256=WaO-rY4qc6Pqwt1mJykjr-4lniwx4y9wF0IHZF-lVDA,6309
82
- StreamingCommunity/Lib/M3U8/parser.py,sha256=waHkNErWu-tnIJJvixVNjZ1R7OEtAWZDoTch-yey98M,22485
82
+ StreamingCommunity/Lib/M3U8/estimator.py,sha256=q8zEjjtxrnDXHbSh6ZsUDSMH5-nwbrk2LXDmsCaPuos,6516
83
+ StreamingCommunity/Lib/M3U8/parser.py,sha256=ykffMt7wmvDij70Whxz-hin0ZcmfRIj3VufXFGbHyMc,22573
83
84
  StreamingCommunity/Lib/M3U8/url_fixer.py,sha256=0Wd6MsBf8BBQ6mmHFElgCX3UbHAzRzSREmi03yb4gU4,1735
84
85
  StreamingCommunity/Lib/TMBD/__init__.py,sha256=TBKZ0zwAUvil2V2AirEPy_Q-M3Ksar2CJsUNt4tpXhk,109
85
86
  StreamingCommunity/Lib/TMBD/obj_tmbd.py,sha256=dRSvJFS5yqmsBZcw2wqbStcBtXNjU_3n5czMyremAtU,1187
@@ -87,24 +88,24 @@ StreamingCommunity/Lib/TMBD/tmdb.py,sha256=QaYOskwBZbSejI0pG8h_pX4_7VNn9-3XZ3Nw6
87
88
  StreamingCommunity/TelegramHelp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
88
89
  StreamingCommunity/TelegramHelp/config.json,sha256=v7FjA4smyLWZxChATewmvxDjJcclOCRZ_BIFPJd8Jvc,1374
89
90
  StreamingCommunity/TelegramHelp/telegram_bot.py,sha256=KiurpTrgiUNyMcLfceseaxV4xGegCUSJ8YttSeGXhJM,26429
90
- StreamingCommunity/Upload/update.py,sha256=PL0cUuk580nFQGmFYFMfXt86rcksF-Whq7p9zUeNH_Y,3665
91
- StreamingCommunity/Upload/version.py,sha256=nQYmttSv4gZvjUPfES_xcQ9dUYepOMWFpTszNFKr7DM,171
91
+ StreamingCommunity/Upload/update.py,sha256=grMrdVdAo2jnpobosgXtKU7_xAIxYrhrJY5ce67HS3g,3649
92
+ StreamingCommunity/Upload/version.py,sha256=h2Q8pvb7bn7gw3fxo06hdomqYsU77CpA4TCB8TlBf3U,170
92
93
  StreamingCommunity/Util/color.py,sha256=NvD0Eni-25oOOkY-szCEoc0lGvzQxyL7xhM0RE4EvUM,458
93
- StreamingCommunity/Util/config_json.py,sha256=vB6o6J5V874_bp9Y87VCCxp2wig0P3vwz4--zVokH4o,28576
94
+ StreamingCommunity/Util/config_json.py,sha256=g52iOA-AUmXx1Q--1OeBidILbaICX4uR_rezWfjG4TU,22807
94
95
  StreamingCommunity/Util/headers.py,sha256=RP3A6Gr8UB8VU6uzw_yDOjEKkIFKpi7Gi6_w2ACxE30,292
95
96
  StreamingCommunity/Util/http_client.py,sha256=Z9537JZLoaPq3S9dfipe4nrWNL7QOyvxkqUlZHdSo40,6253
96
97
  StreamingCommunity/Util/logger.py,sha256=jexWdX8G7Sf3k5suyFNYlVXNgjsJjlAP5OrhGEQ8s0A,3069
97
- StreamingCommunity/Util/message.py,sha256=tstYQ9NxlfWupYkqPrOqOLqrKEb1iG5NsvIMNTUXXvA,1332
98
- StreamingCommunity/Util/os.py,sha256=f37gVbiaDgygpmuJNJeqJoOt2ZvJmN1l29QRIQjGXDQ,12294
98
+ StreamingCommunity/Util/message.py,sha256=5oBph-Nvv6k_lp8hG4GIeDTahPqrQ9Dh0HQDry9iY5U,1261
99
+ StreamingCommunity/Util/os.py,sha256=oX1x_mzAt2ouH3qJ2Zzdtn4RQpAF5d1ijnE843mTPAk,12140
99
100
  StreamingCommunity/Util/table.py,sha256=61cPSXxhmAkI1aLE0X7OisB04Yb-grnLTZ5NlLfE-qA,10796
100
101
  StreamingCommunity/Util/installer/__init__.py,sha256=CpsWRXHHsve9YC6g8--uVUsTillHi0y5mgjBboUOZrM,234
101
- StreamingCommunity/Util/installer/bento4_install.py,sha256=Cinufke4bqASzkpN_UUGXQetIFOklOzVJxNMJ0cSFqE,7428
102
+ StreamingCommunity/Util/installer/bento4_install.py,sha256=8ZddP9_6Fa30pVJyOMqnedL8tmcrvsng9FZ_4w44W18,6976
102
103
  StreamingCommunity/Util/installer/binary_paths.py,sha256=-vo1sAavMBCg8u1Bx-CNhUIlWdQ7C2gcT2esVMSpKxs,2470
103
- StreamingCommunity/Util/installer/device_install.py,sha256=JqYOk7aFUFv8mLq1qwikqgElqeNo343lT9w6D0-7nJo,4466
104
- StreamingCommunity/Util/installer/ffmpeg_install.py,sha256=iTj6MQRNWOz3mMtPLHnAALD1lwvBmG-LRM4o44bPRnQ,13638
105
- streamingcommunity-3.3.6.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
106
- streamingcommunity-3.3.6.dist-info/METADATA,sha256=WC8Qa_l85O5GBn4IXILL8kX6J7_zBhjkiSBuPcMOv9Q,20303
107
- streamingcommunity-3.3.6.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
108
- streamingcommunity-3.3.6.dist-info/entry_points.txt,sha256=Qph9XYfDC8n4LfDLOSl6gJGlkb9eFb5f-JOr_Wb_5rk,67
109
- streamingcommunity-3.3.6.dist-info/top_level.txt,sha256=YsOcxKP-WOhWpIWgBlh0coll9XUx7aqmRPT7kmt3fH0,19
110
- streamingcommunity-3.3.6.dist-info/RECORD,,
104
+ StreamingCommunity/Util/installer/device_install.py,sha256=3_pQcz6-lpDth2f2kq4uiV-nPEMGTDB7Q4lThyRnwrI,4389
105
+ StreamingCommunity/Util/installer/ffmpeg_install.py,sha256=OobkwdIhO9QbMGjoTvYCeYzdodU0K1LX6LaMLRl7nZY,13562
106
+ streamingcommunity-3.3.8.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
107
+ streamingcommunity-3.3.8.dist-info/METADATA,sha256=GDqhnZCUPZip1LHI2ZNaCFfwH_v_mBionWj1Ls9nvks,20252
108
+ streamingcommunity-3.3.8.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
109
+ streamingcommunity-3.3.8.dist-info/entry_points.txt,sha256=Qph9XYfDC8n4LfDLOSl6gJGlkb9eFb5f-JOr_Wb_5rk,67
110
+ streamingcommunity-3.3.8.dist-info/top_level.txt,sha256=YsOcxKP-WOhWpIWgBlh0coll9XUx7aqmRPT7kmt3fH0,19
111
+ streamingcommunity-3.3.8.dist-info/RECORD,,