StreamingCommunity 2.5.6__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.
Potentially problematic release.
This version of StreamingCommunity might be problematic. Click here for more details.
- StreamingCommunity/Api/Player/ddl.py +2 -3
- StreamingCommunity/Api/Site/1337xx/__init__.py +5 -6
- StreamingCommunity/Api/Site/1337xx/site.py +7 -14
- StreamingCommunity/Api/Site/1337xx/title.py +3 -5
- StreamingCommunity/Api/Site/altadefinizionegratis/__init__.py +7 -6
- StreamingCommunity/Api/Site/altadefinizionegratis/film.py +14 -19
- StreamingCommunity/Api/Site/altadefinizionegratis/site.py +6 -14
- StreamingCommunity/Api/Site/animeunity/__init__.py +7 -7
- StreamingCommunity/Api/Site/animeunity/film_serie.py +29 -31
- StreamingCommunity/Api/Site/animeunity/site.py +14 -22
- StreamingCommunity/Api/Site/cb01new/__init__.py +5 -4
- StreamingCommunity/Api/Site/cb01new/film.py +2 -5
- StreamingCommunity/Api/Site/cb01new/site.py +5 -13
- StreamingCommunity/Api/Site/ddlstreamitaly/__init__.py +5 -4
- StreamingCommunity/Api/Site/ddlstreamitaly/series.py +12 -49
- StreamingCommunity/Api/Site/ddlstreamitaly/site.py +6 -16
- StreamingCommunity/Api/Site/ddlstreamitaly/util/ScrapeSerie.py +2 -3
- StreamingCommunity/Api/Site/guardaserie/__init__.py +5 -4
- StreamingCommunity/Api/Site/guardaserie/series.py +12 -46
- StreamingCommunity/Api/Site/guardaserie/site.py +5 -13
- StreamingCommunity/Api/Site/guardaserie/util/ScrapeSerie.py +10 -14
- StreamingCommunity/Api/Site/ilcorsaronero/__init__.py +5 -4
- StreamingCommunity/Api/Site/ilcorsaronero/site.py +5 -13
- StreamingCommunity/Api/Site/ilcorsaronero/title.py +3 -5
- StreamingCommunity/Api/Site/mostraguarda/__init__.py +2 -2
- StreamingCommunity/Api/Site/mostraguarda/film.py +4 -8
- StreamingCommunity/Api/Site/streamingcommunity/__init__.py +8 -7
- StreamingCommunity/Api/Site/streamingcommunity/film.py +14 -18
- StreamingCommunity/Api/Site/streamingcommunity/series.py +25 -76
- StreamingCommunity/Api/Site/streamingcommunity/site.py +11 -23
- StreamingCommunity/Api/Template/Util/__init__.py +8 -1
- StreamingCommunity/Api/Template/Util/manage_ep.py +46 -2
- StreamingCommunity/Api/Template/config_loader.py +71 -0
- StreamingCommunity/Lib/Downloader/HLS/downloader.py +60 -60
- StreamingCommunity/Lib/Downloader/HLS/segments.py +40 -15
- StreamingCommunity/Lib/Downloader/MP4/downloader.py +47 -40
- StreamingCommunity/Lib/FFmpeg/command.py +59 -3
- StreamingCommunity/Lib/M3U8/estimator.py +10 -12
- StreamingCommunity/Lib/M3U8/parser.py +12 -51
- StreamingCommunity/Lib/TMBD/tmdb.py +66 -99
- StreamingCommunity/TelegramHelp/telegram_bot.py +222 -68
- StreamingCommunity/Util/_jsonConfig.py +14 -13
- StreamingCommunity/Util/ffmpeg_installer.py +70 -64
- StreamingCommunity/Util/headers.py +11 -122
- StreamingCommunity/Util/os.py +65 -56
- StreamingCommunity/Util/table.py +62 -108
- StreamingCommunity/run.py +16 -11
- {StreamingCommunity-2.5.6.dist-info → StreamingCommunity-2.5.8.dist-info}/METADATA +57 -23
- StreamingCommunity-2.5.8.dist-info/RECORD +86 -0
- StreamingCommunity/Api/Site/1337xx/costant.py +0 -15
- StreamingCommunity/Api/Site/altadefinizionegratis/costant.py +0 -21
- StreamingCommunity/Api/Site/animeunity/costant.py +0 -21
- StreamingCommunity/Api/Site/cb01new/costant.py +0 -19
- StreamingCommunity/Api/Site/ddlstreamitaly/costant.py +0 -20
- StreamingCommunity/Api/Site/guardaserie/costant.py +0 -19
- StreamingCommunity/Api/Site/ilcorsaronero/costant.py +0 -19
- StreamingCommunity/Api/Site/mostraguarda/costant.py +0 -19
- StreamingCommunity/Api/Site/streamingcommunity/costant.py +0 -21
- StreamingCommunity/TelegramHelp/request_manager.py +0 -82
- StreamingCommunity/TelegramHelp/session.py +0 -56
- StreamingCommunity-2.5.6.dist-info/RECORD +0 -96
- {StreamingCommunity-2.5.6.dist-info → StreamingCommunity-2.5.8.dist-info}/LICENSE +0 -0
- {StreamingCommunity-2.5.6.dist-info → StreamingCommunity-2.5.8.dist-info}/WHEEL +0 -0
- {StreamingCommunity-2.5.6.dist-info → StreamingCommunity-2.5.8.dist-info}/entry_points.txt +0 -0
- {StreamingCommunity-2.5.6.dist-info → StreamingCommunity-2.5.8.dist-info}/top_level.txt +0 -0
StreamingCommunity/run.py
CHANGED
|
@@ -16,14 +16,14 @@ from typing import Callable
|
|
|
16
16
|
from StreamingCommunity.Util.message import start_message
|
|
17
17
|
from StreamingCommunity.Util.console import console, msg
|
|
18
18
|
from StreamingCommunity.Util._jsonConfig import config_manager
|
|
19
|
-
from StreamingCommunity.Upload.update import update as git_update
|
|
20
19
|
from StreamingCommunity.Util.os import os_summary
|
|
21
20
|
from StreamingCommunity.Util.logger import Logger
|
|
21
|
+
from StreamingCommunity.Upload.update import update as git_update
|
|
22
|
+
from StreamingCommunity.Lib.TMBD import tmdb
|
|
22
23
|
|
|
23
24
|
|
|
24
25
|
# Telegram util
|
|
25
|
-
from StreamingCommunity.TelegramHelp.
|
|
26
|
-
from StreamingCommunity.TelegramHelp.telegram_bot import get_bot_instance
|
|
26
|
+
from StreamingCommunity.TelegramHelp.telegram_bot import get_bot_instance, TelegramSession
|
|
27
27
|
|
|
28
28
|
|
|
29
29
|
# Config
|
|
@@ -62,7 +62,7 @@ def load_search_functions():
|
|
|
62
62
|
|
|
63
63
|
api_dir = os.path.join(base_path, 'Api', 'Site')
|
|
64
64
|
init_files = glob.glob(os.path.join(api_dir, '*', '__init__.py'))
|
|
65
|
-
|
|
65
|
+
|
|
66
66
|
# Retrieve modules and their indices
|
|
67
67
|
for init_file in init_files:
|
|
68
68
|
|
|
@@ -72,7 +72,7 @@ def load_search_functions():
|
|
|
72
72
|
# Se il modulo è nella lista da escludere, saltalo
|
|
73
73
|
if module_name in excluded_sites:
|
|
74
74
|
continue
|
|
75
|
-
|
|
75
|
+
|
|
76
76
|
logging.info(f"Load module name: {module_name}")
|
|
77
77
|
|
|
78
78
|
try:
|
|
@@ -133,13 +133,18 @@ def initialize():
|
|
|
133
133
|
console.log("[red]Install python version > 3.7.16")
|
|
134
134
|
sys.exit(0)
|
|
135
135
|
|
|
136
|
+
# Trending tmbd
|
|
137
|
+
print()
|
|
138
|
+
tmdb.display_trending_films()
|
|
139
|
+
tmdb.display_trending_tv_shows()
|
|
140
|
+
|
|
141
|
+
|
|
136
142
|
# Attempting GitHub update
|
|
137
143
|
try:
|
|
138
144
|
git_update()
|
|
139
145
|
except:
|
|
140
146
|
console.log("[red]Error with loading github.")
|
|
141
147
|
|
|
142
|
-
|
|
143
148
|
def restart_script():
|
|
144
149
|
"""Riavvia lo script con gli stessi argomenti della riga di comando."""
|
|
145
150
|
print("\n🔄 Riavvio dello script...\n")
|
|
@@ -176,9 +181,9 @@ def force_exit():
|
|
|
176
181
|
|
|
177
182
|
print("🚨 Uscita forzata con os._exit(0)")
|
|
178
183
|
os._exit(0)
|
|
179
|
-
|
|
180
184
|
|
|
181
|
-
|
|
185
|
+
|
|
186
|
+
def main(script_id = 0):
|
|
182
187
|
|
|
183
188
|
if TELEGRAM_BOT:
|
|
184
189
|
bot = get_bot_instance()
|
|
@@ -332,7 +337,7 @@ def main(script_id):
|
|
|
332
337
|
if category in input_to_function:
|
|
333
338
|
run_function(input_to_function[category])
|
|
334
339
|
else:
|
|
335
|
-
|
|
340
|
+
|
|
336
341
|
if TELEGRAM_BOT:
|
|
337
342
|
bot.send_message(f"Categoria non valida", None)
|
|
338
343
|
|
|
@@ -347,6 +352,6 @@ def main(script_id):
|
|
|
347
352
|
bot.send_message(f"Chiusura in corso", None)
|
|
348
353
|
|
|
349
354
|
# Delete script_id
|
|
350
|
-
script_id = get_session()
|
|
355
|
+
script_id = TelegramSession.get_session()
|
|
351
356
|
if script_id != "unknown":
|
|
352
|
-
deleteScriptId(script_id)
|
|
357
|
+
TelegramSession.deleteScriptId(script_id)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: StreamingCommunity
|
|
3
|
-
Version: 2.5.
|
|
3
|
+
Version: 2.5.8
|
|
4
4
|
Home-page: https://github.com/Lovi-0/StreamingCommunity
|
|
5
5
|
Author: Lovi-0
|
|
6
6
|
Project-URL: Bug Reports, https://github.com/Lovi-0/StreamingCommunity/issues
|
|
@@ -20,7 +20,7 @@ Requires-Dist: jsbeautifier
|
|
|
20
20
|
Requires-Dist: pathvalidate
|
|
21
21
|
Requires-Dist: pycryptodomex
|
|
22
22
|
Requires-Dist: googlesearch-python
|
|
23
|
-
Requires-Dist:
|
|
23
|
+
Requires-Dist: ua-generator
|
|
24
24
|
Requires-Dist: qbittorrent-api
|
|
25
25
|
Requires-Dist: python-qbittorrent
|
|
26
26
|
Requires-Dist: Pillow
|
|
@@ -53,7 +53,7 @@ Requires-Dist: pyTelegramBotAPI
|
|
|
53
53
|
<img src="https://img.shields.io/pypi/dm/streamingcommunity?style=for-the-badge" alt="PyPI Downloads"/>
|
|
54
54
|
</a>
|
|
55
55
|
<a href="https://github.com/Arrowar/StreamingCommunity">
|
|
56
|
-
<img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/Arrowar/StreamingCommunity/main/
|
|
56
|
+
<img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/Arrowar/StreamingCommunity/main/.github/media/loc-badge.json&style=for-the-badge" alt="Lines of Code"/>
|
|
57
57
|
</a>
|
|
58
58
|
</p>
|
|
59
59
|
|
|
@@ -81,16 +81,19 @@ Requires-Dist: pyTelegramBotAPI
|
|
|
81
81
|
- 💬 [Support](#support)
|
|
82
82
|
- 🤝 [Contribute](#contributing)
|
|
83
83
|
- ⚠️ [Disclaimer](#disclaimer)
|
|
84
|
-
- ⚡ [Contributors](#contributors)
|
|
84
|
+
- ⚡ [Contributors](#contributors)
|
|
85
85
|
|
|
86
86
|
# Installation
|
|
87
87
|
|
|
88
88
|
<p align="center">
|
|
89
|
-
<a href="https://github.com/Arrowar/StreamingCommunity/releases/latest/download/
|
|
90
|
-
<img src="https://img.shields.io/badge/-
|
|
89
|
+
<a href="https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_win.exe">
|
|
90
|
+
<img src="https://img.shields.io/badge/-Windows-blue.svg?style=for-the-badge&logo=windows" alt="Windows">
|
|
91
91
|
</a>
|
|
92
|
-
<a href="https://github.com/Arrowar/StreamingCommunity/releases/latest/download/
|
|
93
|
-
<img src="https://img.shields.io/badge/-
|
|
92
|
+
<a href="https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_mac">
|
|
93
|
+
<img src="https://img.shields.io/badge/-macOS-black.svg?style=for-the-badge&logo=apple" alt="macOS">
|
|
94
|
+
</a>
|
|
95
|
+
<a href="https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_linux">
|
|
96
|
+
<img src="https://img.shields.io/badge/-Linux-orange.svg?style=for-the-badge&logo=linux" alt="Linux">
|
|
94
97
|
</a>
|
|
95
98
|
<a href="https://github.com/Arrowar/StreamingCommunity/releases">
|
|
96
99
|
<img src="https://img.shields.io/badge/-All_Versions-lightgrey.svg?style=for-the-badge" alt="All Versions">
|
|
@@ -205,7 +208,7 @@ For detailed Windows PATH instructions, see the [Windows PATH guide](https://www
|
|
|
205
208
|
```bash
|
|
206
209
|
# For bash (edit ~/.bash_profile)
|
|
207
210
|
export PATH="/your/custom/path:$PATH"
|
|
208
|
-
|
|
211
|
+
|
|
209
212
|
# For zsh (edit ~/.zshrc)
|
|
210
213
|
export PATH="/your/custom/path:$PATH"
|
|
211
214
|
```
|
|
@@ -213,7 +216,7 @@ For detailed Windows PATH instructions, see the [Windows PATH guide](https://www
|
|
|
213
216
|
```bash
|
|
214
217
|
# For bash
|
|
215
218
|
source ~/.bash_profile
|
|
216
|
-
|
|
219
|
+
|
|
217
220
|
# For zsh
|
|
218
221
|
source ~/.zshrc
|
|
219
222
|
```
|
|
@@ -224,7 +227,7 @@ For detailed Windows PATH instructions, see the [Windows PATH guide](https://www
|
|
|
224
227
|
```bash
|
|
225
228
|
# For bash (edit ~/.bashrc)
|
|
226
229
|
export PATH="/your/custom/path:$PATH"
|
|
227
|
-
|
|
230
|
+
|
|
228
231
|
# For zsh (edit ~/.zshrc)
|
|
229
232
|
export PATH="/your/custom/path:$PATH"
|
|
230
233
|
```
|
|
@@ -307,7 +310,7 @@ The configuration file is divided into several main sections:
|
|
|
307
310
|
```
|
|
308
311
|
|
|
309
312
|
- `root_path`: Directory where all videos will be saved
|
|
310
|
-
|
|
313
|
+
|
|
311
314
|
### Path examples:
|
|
312
315
|
* Windows: `C:\\MyLibrary\\Folder` or `\\\\MyServer\\MyLibrary` (if you want to use a network folder)
|
|
313
316
|
* Linux/MacOS: `Desktop/MyLibrary/Folder`
|
|
@@ -333,7 +336,7 @@ The configuration file is divided into several main sections:
|
|
|
333
336
|
`<br/><br/>`
|
|
334
337
|
* Can be changed from terminal with `--map_episode_name`
|
|
335
338
|
<br/><br/>
|
|
336
|
-
|
|
339
|
+
|
|
337
340
|
- `add_siteName`: If set to true, appends the site_name to the root path before the movie and serie folders.
|
|
338
341
|
* Can be changed from terminal with `--add_siteName true/false`
|
|
339
342
|
<br/><br/>
|
|
@@ -453,12 +456,25 @@ You can download VLC Media Player from the [official website](https://www.videol
|
|
|
453
456
|
|
|
454
457
|
```json
|
|
455
458
|
{
|
|
456
|
-
"force_resolution":
|
|
459
|
+
"force_resolution": "1080p",
|
|
457
460
|
"get_only_link": false
|
|
458
461
|
}
|
|
459
462
|
```
|
|
460
463
|
|
|
461
|
-
- `force_resolution`:
|
|
464
|
+
- `force_resolution`: Choose the video resolution for downloading:
|
|
465
|
+
* `"Best"`: Highest available resolution
|
|
466
|
+
* `"Worst"`: Lowest available resolution
|
|
467
|
+
* `"720p"`: Force 720p resolution
|
|
468
|
+
* Or specify one of these resolutions:
|
|
469
|
+
- 1080p (1920x1080)
|
|
470
|
+
- 720p (1280x720)
|
|
471
|
+
- 480p (640x480)
|
|
472
|
+
- 360p (640x360)
|
|
473
|
+
- 320p (480x320)
|
|
474
|
+
- 240p (426x240)
|
|
475
|
+
- 240p (320x240)
|
|
476
|
+
- 144p (256x144)
|
|
477
|
+
|
|
462
478
|
- `get_only_link`: Return M3U8 playlist/index URL instead of downloading
|
|
463
479
|
|
|
464
480
|
|
|
@@ -529,15 +545,31 @@ The `run-container` command mounts also the `config.json` file, so any change to
|
|
|
529
545
|
|
|
530
546
|
## Configuration
|
|
531
547
|
|
|
532
|
-
|
|
548
|
+
The bot was created to replace terminal commands and allow interaction via Telegram. Each download runs within a screen session, enabling multiple downloads to run simultaneously.
|
|
549
|
+
|
|
550
|
+
To run the bot in the background, simply start it inside a screen session and then press Ctrl + A, followed by D, to detach from the session without stopping the bot.
|
|
533
551
|
|
|
534
|
-
|
|
552
|
+
Command Functions:
|
|
553
|
+
|
|
554
|
+
🔹 /start – Starts a new search for a download. This command performs the same operations as manually running the script in the terminal with test_run.py.
|
|
555
|
+
|
|
556
|
+
🔹 /list – Displays the status of active downloads, with options to:
|
|
557
|
+
|
|
558
|
+
Stop an incorrect download using /stop <ID>.
|
|
559
|
+
|
|
560
|
+
View the real-time output of a download using /screen <ID>.
|
|
561
|
+
|
|
562
|
+
⚠ Warning: If a download is interrupted, incomplete files may remain in the folder specified in config.json. These files must be deleted manually to avoid storage or management issues.
|
|
563
|
+
|
|
564
|
+
🛠 Configuration: Currently, the bot's settings are stored in the config.json file, which is located in the same directory as the telegram_bot.py script.
|
|
535
565
|
|
|
536
566
|
## .env Example:
|
|
537
567
|
|
|
568
|
+
You need to create an .env file and enter your Telegram token and user ID to authorize only one user to use it
|
|
569
|
+
|
|
538
570
|
```
|
|
539
571
|
TOKEN_TELEGRAM=IlTuo2131TOKEN$12D3Telegram
|
|
540
|
-
AUTHORIZED_USER_ID=12345678
|
|
572
|
+
AUTHORIZED_USER_ID=12345678
|
|
541
573
|
DEBUG=False
|
|
542
574
|
```
|
|
543
575
|
|
|
@@ -549,11 +581,13 @@ pip install -r requirements.txt
|
|
|
549
581
|
|
|
550
582
|
## On Linux/MacOS:
|
|
551
583
|
|
|
584
|
+
Start the bot from the folder /StreamingCommunity/TelegramHelp
|
|
585
|
+
|
|
552
586
|
```bash
|
|
553
587
|
python3 telegram_bot.py
|
|
554
588
|
```
|
|
555
589
|
|
|
556
|
-
# Website Status
|
|
590
|
+
# Website Status
|
|
557
591
|
|
|
558
592
|
| Website | Status | Command |
|
|
559
593
|
|:-------------------|:------:|:--------:|
|
|
@@ -561,21 +595,21 @@ python3 telegram_bot.py
|
|
|
561
595
|
| [AltadefinizioneGratis](https://altadefinizionegratis.pro/) | ✅ | -ALT |
|
|
562
596
|
| [AnimeUnity](https://animeunity.so/) | ✅ | -ANI |
|
|
563
597
|
| [Ilcorsaronero](https://ilcorsaronero.link/) | ✅ | `-ILC` |
|
|
564
|
-
| [CB01New](https://cb01new.
|
|
598
|
+
| [CB01New](https://cb01new.gold/) | ✅ | -CB0 |
|
|
565
599
|
| [DDLStreamItaly](https://ddlstreamitaly.co/) | ✅ | -DDL |
|
|
566
|
-
| [GuardaSerie](https://guardaserie.
|
|
600
|
+
| [GuardaSerie](https://guardaserie.now/) | ✅ | -GUA |
|
|
567
601
|
| [MostraGuarda](https://mostraguarda.stream/) | ✅ | -MOS |
|
|
568
602
|
| [StreamingCommunity](https://streamingcommunity.paris/) | ✅ | -STR |
|
|
569
603
|
|
|
570
604
|
|
|
571
|
-
# Tutorials
|
|
605
|
+
# Tutorials
|
|
572
606
|
|
|
573
607
|
- [Windows Tutorial](https://www.youtube.com/watch?v=mZGqK4wdN-k)
|
|
574
608
|
- [Linux Tutorial](https://www.youtube.com/watch?v=0qUNXPE_mTg)
|
|
575
609
|
- [Pypy Tutorial](https://www.youtube.com/watch?v=C6m9ZKOK0p4)
|
|
576
610
|
- [Compiled .exe Tutorial](https://www.youtube.com/watch?v=pm4lqsxkTVo)
|
|
577
611
|
|
|
578
|
-
# To Do
|
|
612
|
+
# To Do
|
|
579
613
|
|
|
580
614
|
- To Finish [website API](https://github.com/Arrowar/StreamingCommunity/tree/test_gui_1)
|
|
581
615
|
- To finish [website API 2](https://github.com/hydrosh/StreamingCommunity/tree/test_gui_1)
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
StreamingCommunity/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
+
StreamingCommunity/run.py,sha256=iEI6TghwB5kJtpYRrnk4y-fVoElIGELnZFxaeqO93L8,12261
|
|
3
|
+
StreamingCommunity/Api/Player/ddl.py,sha256=KNTrM6UzoyapfuLNWJvi16A6MJCa6h29JIs9oYasonc,2258
|
|
4
|
+
StreamingCommunity/Api/Player/maxstream.py,sha256=Q9td9lOxC_-8YwgB3bQ-H2686uMqjd23lptnsdAglYk,5153
|
|
5
|
+
StreamingCommunity/Api/Player/supervideo.py,sha256=udPbBUvlvHVUCZasOJvFmcQfSFmB0KquoSOWOiGur4M,5925
|
|
6
|
+
StreamingCommunity/Api/Player/vixcloud.py,sha256=n9SEx2G6-7OsvTMHcSbpO_XmU2U8IDQAwQ6C-qioBUE,9226
|
|
7
|
+
StreamingCommunity/Api/Player/Helper/Vixcloud/js_parser.py,sha256=U-8QlD5kGzIk3-4t4D6QyYmiDe8UBrSuVi1YHRQb7AU,4295
|
|
8
|
+
StreamingCommunity/Api/Player/Helper/Vixcloud/util.py,sha256=KqTtHJzfhtKHmMTdA7OWMgdpTHTe6LyXCphBLTMYLYs,4727
|
|
9
|
+
StreamingCommunity/Api/Site/1337xx/__init__.py,sha256=AmvsV_jANao_agPGOrV8WFbGEjNlTCTk86Jec5RdRbs,1314
|
|
10
|
+
StreamingCommunity/Api/Site/1337xx/site.py,sha256=OyS4FQ_IOSfbNcXHs0cJgnuG3407GfsN4v8P7uGZnrw,2639
|
|
11
|
+
StreamingCommunity/Api/Site/1337xx/title.py,sha256=1_a8zMtjKX7E64U4jNq373KnGgKpdC1yNsenlclBJMo,1893
|
|
12
|
+
StreamingCommunity/Api/Site/altadefinizionegratis/__init__.py,sha256=-d6ajulRxJathFxAveXmzpzOFbkbMtoWpViAThR6arM,2201
|
|
13
|
+
StreamingCommunity/Api/Site/altadefinizionegratis/film.py,sha256=IIj7gZ1almed1aLsROd9-jek_q_wikf7CkPXowIEeW8,2274
|
|
14
|
+
StreamingCommunity/Api/Site/altadefinizionegratis/site.py,sha256=Uc9dsamGvzWTTHkEiC8ekPwU3U5u_CK8gmu_M9yCVDc,3498
|
|
15
|
+
StreamingCommunity/Api/Site/animeunity/__init__.py,sha256=2dul294DW-VnYGQeo5-WYlRZj1LjPbpL-bhlyuUl6WI,2219
|
|
16
|
+
StreamingCommunity/Api/Site/animeunity/film_serie.py,sha256=xftUA9RZf8bsyfzoXEmlhGS8ua-XfB3qcLYtPGpSh1I,5704
|
|
17
|
+
StreamingCommunity/Api/Site/animeunity/site.py,sha256=RoKRA28IObeGFgjINeXMziuGmAALv8-zGVb3O4KUwFg,5900
|
|
18
|
+
StreamingCommunity/Api/Site/animeunity/util/ScrapeSerie.py,sha256=92PDY4CJSSmeHsVowqBuCzYmLa1pcXR8hCBXcuvlmvk,2886
|
|
19
|
+
StreamingCommunity/Api/Site/cb01new/__init__.py,sha256=-243pVwMjuAAPk7j7BjLL1SXIAK5ZHVHrsZ8hGhDIic,1329
|
|
20
|
+
StreamingCommunity/Api/Site/cb01new/film.py,sha256=KtFPGQSc9hbmasBiz8dDfILC41iu-AlWiYVVHTVqUWg,1615
|
|
21
|
+
StreamingCommunity/Api/Site/cb01new/site.py,sha256=gZeITd30ym_YK1GpTZu8QtpDMhhXvkSv5zonPh_f_4k,2218
|
|
22
|
+
StreamingCommunity/Api/Site/ddlstreamitaly/__init__.py,sha256=kyYJErCiMmlI549SFkcjjhVXcInwgDAyKxJJsNEI88A,1469
|
|
23
|
+
StreamingCommunity/Api/Site/ddlstreamitaly/series.py,sha256=cLKRb1cq7LHveDFIpdbhgpSIJFeIhgsbvPeerVQh-LM,3335
|
|
24
|
+
StreamingCommunity/Api/Site/ddlstreamitaly/site.py,sha256=QCTouEGUqhhnigDfx66L0Sz4sXOhML4JfAjsN_Bogpw,2853
|
|
25
|
+
StreamingCommunity/Api/Site/ddlstreamitaly/util/ScrapeSerie.py,sha256=akHjQg4mFNdS39DyCyu2eE30ty_471YWJZ1NnTQT104,2549
|
|
26
|
+
StreamingCommunity/Api/Site/guardaserie/__init__.py,sha256=xCuKD72yOjazCF3GsIWLSeTzFpwr-8W33AgVKT5PFUU,1321
|
|
27
|
+
StreamingCommunity/Api/Site/guardaserie/series.py,sha256=f5-5Fy-Bh1QF9zA4zr-DJRgoQCO8sQ0Af0v5VEleHFg,5619
|
|
28
|
+
StreamingCommunity/Api/Site/guardaserie/site.py,sha256=HqwMAFDMouA9C0DWqSV1ziKxcNh6Kb8vO_PiowaVWhs,2643
|
|
29
|
+
StreamingCommunity/Api/Site/guardaserie/util/ScrapeSerie.py,sha256=cm1LcEUTIiccCgJpXwbe6EOnKmzsEFXOaEGm2i5P1JA,3263
|
|
30
|
+
StreamingCommunity/Api/Site/ilcorsaronero/__init__.py,sha256=P4raHiMhz-8UtCm4P1S065poMztTKzT9BovsfRXVuUs,1347
|
|
31
|
+
StreamingCommunity/Api/Site/ilcorsaronero/site.py,sha256=B5LwR0vLLDaXMfwFHF3hnTaP1X3Z28t7fV3-le4T3Mg,2022
|
|
32
|
+
StreamingCommunity/Api/Site/ilcorsaronero/title.py,sha256=aVkLZU5NsY40S_yrLYf2eAk3ZyEE_T9FlHZz9ZPCknM,1305
|
|
33
|
+
StreamingCommunity/Api/Site/ilcorsaronero/util/ilCorsarScraper.py,sha256=BJgmv2UO3XM0gNkSsAt1REJoIUXjD_1nxT6Tpp5HGQg,5114
|
|
34
|
+
StreamingCommunity/Api/Site/mostraguarda/__init__.py,sha256=Z4SpSr4OpNJYfhqxkNENZehk09jh72_D1cXTuoXNnVI,1184
|
|
35
|
+
StreamingCommunity/Api/Site/mostraguarda/film.py,sha256=VlODqQkwhJsIZBkVXScQbmtmDE-VBxI4J8R4mIa2yu0,2476
|
|
36
|
+
StreamingCommunity/Api/Site/streamingcommunity/__init__.py,sha256=xg6HC1U3bRExbH2Z-eDL5qr80Ol8lfyytiOZV1ygCi4,2453
|
|
37
|
+
StreamingCommunity/Api/Site/streamingcommunity/film.py,sha256=92BjTgSsQPRK_t5gocN9JNs_SviErjYBJq1DJ_hvuV8,2517
|
|
38
|
+
StreamingCommunity/Api/Site/streamingcommunity/series.py,sha256=YoR0X2w6wK3mYSjyS58mOLEmQLjhLbJ61t3EEXOkzeA,7791
|
|
39
|
+
StreamingCommunity/Api/Site/streamingcommunity/site.py,sha256=kkf6jnBP3MLtT3OHaEkv6aFJoElonCQUxIErkl_Bb_E,4453
|
|
40
|
+
StreamingCommunity/Api/Site/streamingcommunity/util/ScrapeSerie.py,sha256=t-Of4McSpJv8uZGP8hqBj1cuh57U8A5hhvMM18rHSaQ,4260
|
|
41
|
+
StreamingCommunity/Api/Template/__init__.py,sha256=oyfd_4_g5p5q6mxb_rKwSsudZnTM3W3kg1tLwxg-v-Q,46
|
|
42
|
+
StreamingCommunity/Api/Template/config_loader.py,sha256=FtVXEt7xqfNpTURZl7a0effYfns7Nb-OomJlfX2u4a0,2034
|
|
43
|
+
StreamingCommunity/Api/Template/site.py,sha256=BNff60a8TWhg8yRnpGQPXtR8UKAVI2Kn3M-Wf1XIeE8,2934
|
|
44
|
+
StreamingCommunity/Api/Template/Class/SearchType.py,sha256=FtO8xDUGEeJgMWsK2Ab7ZzAFsncalTYL2oEYi8uCnuk,2531
|
|
45
|
+
StreamingCommunity/Api/Template/Util/__init__.py,sha256=lIP-Of79FzENknlgllwHloFAnuNbozjKCDIFk5L5KRw,276
|
|
46
|
+
StreamingCommunity/Api/Template/Util/get_domain.py,sha256=OPgjNN3UgrMHPmy457_DbF5xSZ2fhvZCtRJHhqnYshY,7126
|
|
47
|
+
StreamingCommunity/Api/Template/Util/manage_ep.py,sha256=vti7Pj2MEDmOtoi0yYpZXOdyczqcS8AJ2sWlrrn0NaE,7852
|
|
48
|
+
StreamingCommunity/Api/Template/Util/recall_search.py,sha256=QSKDI4fyQfKF8C2eZXW6lBrAp1HTuhWQeA6g8ybDQYQ,1147
|
|
49
|
+
StreamingCommunity/Lib/Downloader/__init__.py,sha256=JhbBh5hOnSM7VmtkxJ7zZ_FtWEC1JdnKThsSBjLV5FY,140
|
|
50
|
+
StreamingCommunity/Lib/Downloader/HLS/downloader.py,sha256=POmu_pSQXuRK5ksYwMHzXG86D81u_q_2CG6dw2ZnDzw,21045
|
|
51
|
+
StreamingCommunity/Lib/Downloader/HLS/proxyes.py,sha256=H92gBhiwsomtURyBx__SQrML0nSx_0rAb2VWFd2rMAk,3275
|
|
52
|
+
StreamingCommunity/Lib/Downloader/HLS/segments.py,sha256=qydWmQIfz0d-jIVDRO9I5vcMlqgsOZc6qsIGimQmMIU,18797
|
|
53
|
+
StreamingCommunity/Lib/Downloader/MP4/downloader.py,sha256=5EjInbqDUFxPGBts4ExczD-uNycnLFcxMdxjIYZA1cA,7569
|
|
54
|
+
StreamingCommunity/Lib/Downloader/TOR/downloader.py,sha256=n8-56EoGpe3-FO72zL66ovLGTAZRJwzmNqeRGe8VSO8,11212
|
|
55
|
+
StreamingCommunity/Lib/FFmpeg/__init__.py,sha256=pFt6A1gD2tZ8REEXa8QgM7_CsenrmBLQXDh_I1bwZvM,131
|
|
56
|
+
StreamingCommunity/Lib/FFmpeg/capture.py,sha256=GjzT2BNtGL75A9scJNX1RqiRn4cy39dFeHnz2b_Ocw8,5431
|
|
57
|
+
StreamingCommunity/Lib/FFmpeg/command.py,sha256=dRAgpn3sLDNfq6FJ5AD9eAmClVJh0eIna0xyJIGcpfI,10663
|
|
58
|
+
StreamingCommunity/Lib/FFmpeg/util.py,sha256=lTWA9KuK8KWYymuNL_-YMW1WB6Y4aLTsItk9ezPD0NU,8093
|
|
59
|
+
StreamingCommunity/Lib/M3U8/__init__.py,sha256=H_KS2eDd3kVXMziFJnD0FCPvPHEizaqfoA36ElTv_r8,170
|
|
60
|
+
StreamingCommunity/Lib/M3U8/decryptor.py,sha256=yD94xUhGHx4-RcrHguarpmfTeSxtpkfsH1id6sUrOw0,6365
|
|
61
|
+
StreamingCommunity/Lib/M3U8/estimator.py,sha256=3JTo9dRzukSgxAyhnBfqdEa5lyL_jqYFurHcmuJ2rNw,6124
|
|
62
|
+
StreamingCommunity/Lib/M3U8/parser.py,sha256=5cwrIdG5xpNh8UKKi3Qmr6r0vALUa9gP-Utz1eZeFHE,21410
|
|
63
|
+
StreamingCommunity/Lib/M3U8/url_fixer.py,sha256=VKc9j6rXHQ9wEdn6IN5Sn_Gi-fGhCZOMv7SGOq-2a3E,1789
|
|
64
|
+
StreamingCommunity/Lib/TMBD/__init__.py,sha256=jSNsLuW4fBf1tGtIdz6fcRv1d5A-NiNnM_O0G6Hj30s,54
|
|
65
|
+
StreamingCommunity/Lib/TMBD/obj_tmbd.py,sha256=SsvxM4z0xU1IsSrB9o2dpRfuRDUYQk3uRs7AseftPPI,1929
|
|
66
|
+
StreamingCommunity/Lib/TMBD/tmdb.py,sha256=Nq06TDLpBgShd1mzOxujGfeiRHldiqtCh70w5poK484,10822
|
|
67
|
+
StreamingCommunity/TelegramHelp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
68
|
+
StreamingCommunity/TelegramHelp/telegram_bot.py,sha256=jqyo_1cc8ZPGaurHcTZPvrMDnbCLD7I4WhGPXNCt7Fo,26544
|
|
69
|
+
StreamingCommunity/Upload/update.py,sha256=ayuUzXEQcvc62SBC2NxJwvSvk4aoHZITHpmOuW5fT5w,2541
|
|
70
|
+
StreamingCommunity/Upload/version.py,sha256=lvrpaH0cNQ7HPCueUfroXVcjfZ3DlWUtnFoHkv8IZE8,171
|
|
71
|
+
StreamingCommunity/Util/_jsonConfig.py,sha256=p4VkL5tGXIhrTY-Ay9Iad9lyYyC2grSx4A9jMELv-3g,7574
|
|
72
|
+
StreamingCommunity/Util/call_stack.py,sha256=bVYEjwLJnRNJ1tgfwClpyVcLKCTeTMHM2S6-HM2Ibfo,1375
|
|
73
|
+
StreamingCommunity/Util/color.py,sha256=TWvoellnYd-oCTeU3bnXqkMf864KgF9YXwzjtI6rd4g,459
|
|
74
|
+
StreamingCommunity/Util/console.py,sha256=xdGMbH38By9d4ugYMVJFaUrcMJW2krKZh0zbptA3SVQ,218
|
|
75
|
+
StreamingCommunity/Util/ffmpeg_installer.py,sha256=q5yb_ZXKe9PhcG7JbKLfo1AZa8DNukgHqymPbudDuAY,13585
|
|
76
|
+
StreamingCommunity/Util/headers.py,sha256=RNM583pJIO0ytlf9HKJMQ2PFFwJaQZ1eeyMD5E1Uxew,1205
|
|
77
|
+
StreamingCommunity/Util/logger.py,sha256=ekHO3tryCwo5zqSe2RoI6s3qZsZx9ghinTchipMEovg,2112
|
|
78
|
+
StreamingCommunity/Util/message.py,sha256=F2QKjkcCBl6TjsaM5G6iDck0IhxBnDkKV3itwUebr5c,1403
|
|
79
|
+
StreamingCommunity/Util/os.py,sha256=xF8wfjI8aLfIN6DwKYc0g2CMkj6PNtJUd4LCNJVCZY4,17426
|
|
80
|
+
StreamingCommunity/Util/table.py,sha256=R3UbEJPXT0nIQf3huIYZUWKKwHC8aIAUHHuuS1N0r8E,8937
|
|
81
|
+
StreamingCommunity-2.5.8.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
|
82
|
+
StreamingCommunity-2.5.8.dist-info/METADATA,sha256=wwPwa-Hhf_tzNPo_osEzLrxBIykSnf2LSf-asH6zTBc,19650
|
|
83
|
+
StreamingCommunity-2.5.8.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
|
|
84
|
+
StreamingCommunity-2.5.8.dist-info/entry_points.txt,sha256=Qph9XYfDC8n4LfDLOSl6gJGlkb9eFb5f-JOr_Wb_5rk,67
|
|
85
|
+
StreamingCommunity-2.5.8.dist-info/top_level.txt,sha256=YsOcxKP-WOhWpIWgBlh0coll9XUx7aqmRPT7kmt3fH0,19
|
|
86
|
+
StreamingCommunity-2.5.8.dist-info/RECORD,,
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
# 09.06.24
|
|
2
|
-
|
|
3
|
-
import os
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
# Internal utilities
|
|
7
|
-
from StreamingCommunity.Util._jsonConfig import config_manager
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
SITE_NAME = os.path.basename(os.path.dirname(os.path.abspath(__file__)))
|
|
11
|
-
ROOT_PATH = config_manager.get('DEFAULT', 'root_path')
|
|
12
|
-
DOMAIN_NOW = config_manager.get_dict('SITE', SITE_NAME)['domain']
|
|
13
|
-
|
|
14
|
-
SERIES_FOLDER = config_manager.get('DEFAULT', 'serie_folder_name')
|
|
15
|
-
MOVIE_FOLDER = config_manager.get('DEFAULT', 'movie_folder_name')
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
# 26.05.24
|
|
2
|
-
|
|
3
|
-
import os
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
# Internal utilities
|
|
7
|
-
from StreamingCommunity.Util._jsonConfig import config_manager
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
SITE_NAME = os.path.basename(os.path.dirname(os.path.abspath(__file__)))
|
|
11
|
-
ROOT_PATH = config_manager.get('DEFAULT', 'root_path')
|
|
12
|
-
DOMAIN_NOW = config_manager.get_dict('SITE', SITE_NAME)['domain']
|
|
13
|
-
|
|
14
|
-
SERIES_FOLDER = os.path.join(ROOT_PATH, config_manager.get('DEFAULT', 'serie_folder_name'))
|
|
15
|
-
MOVIE_FOLDER = os.path.join(ROOT_PATH, config_manager.get('DEFAULT', 'movie_folder_name'))
|
|
16
|
-
|
|
17
|
-
if config_manager.get_bool("DEFAULT", "add_siteName"):
|
|
18
|
-
SERIES_FOLDER = os.path.join(ROOT_PATH, SITE_NAME, config_manager.get('DEFAULT', 'serie_folder_name'))
|
|
19
|
-
MOVIE_FOLDER = os.path.join(ROOT_PATH, SITE_NAME, config_manager.get('DEFAULT', 'movie_folder_name'))
|
|
20
|
-
|
|
21
|
-
TELEGRAM_BOT = config_manager.get_bool('DEFAULT', 'telegram_bot')
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
# 26.05.24
|
|
2
|
-
|
|
3
|
-
import os
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
# Internal utilities
|
|
7
|
-
from StreamingCommunity.Util._jsonConfig import config_manager
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
SITE_NAME = os.path.basename(os.path.dirname(os.path.abspath(__file__)))
|
|
11
|
-
ROOT_PATH = config_manager.get('DEFAULT', 'root_path')
|
|
12
|
-
DOMAIN_NOW = config_manager.get_dict('SITE', SITE_NAME)['domain']
|
|
13
|
-
|
|
14
|
-
MOVIE_FOLDER = os.path.join(ROOT_PATH, config_manager.get('DEFAULT', 'movie_folder_name'))
|
|
15
|
-
ANIME_FOLDER = os.path.join(ROOT_PATH, config_manager.get('DEFAULT', 'anime_folder_name'))
|
|
16
|
-
|
|
17
|
-
if config_manager.get_bool("DEFAULT", "add_siteName"):
|
|
18
|
-
MOVIE_FOLDER = os.path.join(ROOT_PATH, SITE_NAME, config_manager.get('DEFAULT', 'movie_folder_name'))
|
|
19
|
-
ANIME_FOLDER = os.path.join(ROOT_PATH, config_manager.get('DEFAULT', 'anime_folder_name'))
|
|
20
|
-
|
|
21
|
-
TELEGRAM_BOT = config_manager.get_bool('DEFAULT', 'telegram_bot')
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
# 03.07.24
|
|
2
|
-
|
|
3
|
-
import os
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
# Internal utilities
|
|
7
|
-
from StreamingCommunity.Util._jsonConfig import config_manager
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
SITE_NAME = os.path.basename(os.path.dirname(os.path.abspath(__file__)))
|
|
11
|
-
ROOT_PATH = config_manager.get('DEFAULT', 'root_path')
|
|
12
|
-
DOMAIN_NOW = config_manager.get_dict('SITE', SITE_NAME)['domain']
|
|
13
|
-
|
|
14
|
-
SERIES_FOLDER = os.path.join(ROOT_PATH, config_manager.get('DEFAULT', 'serie_folder_name'))
|
|
15
|
-
MOVIE_FOLDER = os.path.join(ROOT_PATH, config_manager.get('DEFAULT', 'movie_folder_name'))
|
|
16
|
-
|
|
17
|
-
if config_manager.get_bool("DEFAULT", "add_siteName"):
|
|
18
|
-
SERIES_FOLDER = os.path.join(ROOT_PATH, SITE_NAME, config_manager.get('DEFAULT', 'serie_folder_name'))
|
|
19
|
-
MOVIE_FOLDER = os.path.join(ROOT_PATH, SITE_NAME, config_manager.get('DEFAULT', 'movie_folder_name'))
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
# 09.06.24
|
|
2
|
-
|
|
3
|
-
import os
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
# Internal utilities
|
|
7
|
-
from StreamingCommunity.Util._jsonConfig import config_manager
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
SITE_NAME = os.path.basename(os.path.dirname(os.path.abspath(__file__)))
|
|
11
|
-
ROOT_PATH = config_manager.get('DEFAULT', 'root_path')
|
|
12
|
-
DOMAIN_NOW = config_manager.get_dict('SITE', SITE_NAME)['domain']
|
|
13
|
-
COOKIE = config_manager.get_dict('SITE', SITE_NAME)['extra']
|
|
14
|
-
|
|
15
|
-
SERIES_FOLDER = os.path.join(ROOT_PATH, config_manager.get('DEFAULT', 'serie_folder_name'))
|
|
16
|
-
MOVIE_FOLDER = os.path.join(ROOT_PATH, config_manager.get('DEFAULT', 'movie_folder_name'))
|
|
17
|
-
|
|
18
|
-
if config_manager.get_bool("DEFAULT", "add_siteName"):
|
|
19
|
-
SERIES_FOLDER = os.path.join(ROOT_PATH, SITE_NAME, config_manager.get('DEFAULT', 'serie_folder_name'))
|
|
20
|
-
MOVIE_FOLDER = os.path.join(ROOT_PATH, SITE_NAME, config_manager.get('DEFAULT', 'movie_folder_name'))
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
# 09.06.24
|
|
2
|
-
|
|
3
|
-
import os
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
# Internal utilities
|
|
7
|
-
from StreamingCommunity.Util._jsonConfig import config_manager
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
SITE_NAME = os.path.basename(os.path.dirname(os.path.abspath(__file__)))
|
|
11
|
-
ROOT_PATH = config_manager.get('DEFAULT', 'root_path')
|
|
12
|
-
DOMAIN_NOW = config_manager.get_dict('SITE', SITE_NAME)['domain']
|
|
13
|
-
|
|
14
|
-
SERIES_FOLDER = os.path.join(ROOT_PATH, config_manager.get('DEFAULT', 'serie_folder_name'))
|
|
15
|
-
MOVIE_FOLDER = os.path.join(ROOT_PATH, config_manager.get('DEFAULT', 'movie_folder_name'))
|
|
16
|
-
|
|
17
|
-
if config_manager.get_bool("DEFAULT", "add_siteName"):
|
|
18
|
-
SERIES_FOLDER = os.path.join(ROOT_PATH, SITE_NAME, config_manager.get('DEFAULT', 'serie_folder_name'))
|
|
19
|
-
MOVIE_FOLDER = os.path.join(ROOT_PATH, SITE_NAME, config_manager.get('DEFAULT', 'movie_folder_name'))
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
# 09.06.24
|
|
2
|
-
|
|
3
|
-
import os
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
# Internal utilities
|
|
7
|
-
from StreamingCommunity.Util._jsonConfig import config_manager
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
SITE_NAME = os.path.basename(os.path.dirname(os.path.abspath(__file__)))
|
|
11
|
-
ROOT_PATH = config_manager.get('DEFAULT', 'root_path')
|
|
12
|
-
DOMAIN_NOW = config_manager.get_dict('SITE', SITE_NAME)['domain']
|
|
13
|
-
|
|
14
|
-
SERIES_FOLDER = os.path.join(ROOT_PATH, config_manager.get('DEFAULT', 'serie_folder_name'))
|
|
15
|
-
MOVIE_FOLDER = os.path.join(ROOT_PATH, config_manager.get('DEFAULT', 'movie_folder_name'))
|
|
16
|
-
|
|
17
|
-
if config_manager.get_bool("DEFAULT", "add_siteName"):
|
|
18
|
-
SERIES_FOLDER = os.path.join(ROOT_PATH, SITE_NAME, config_manager.get('DEFAULT', 'serie_folder_name'))
|
|
19
|
-
MOVIE_FOLDER = os.path.join(ROOT_PATH, SITE_NAME, config_manager.get('DEFAULT', 'movie_folder_name'))
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
# 26.05.24
|
|
2
|
-
|
|
3
|
-
import os
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
# Internal utilities
|
|
7
|
-
from StreamingCommunity.Util._jsonConfig import config_manager
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
SITE_NAME = os.path.basename(os.path.dirname(os.path.abspath(__file__)))
|
|
11
|
-
ROOT_PATH = config_manager.get('DEFAULT', 'root_path')
|
|
12
|
-
DOMAIN_NOW = config_manager.get_dict('SITE', SITE_NAME)['domain']
|
|
13
|
-
|
|
14
|
-
SERIES_FOLDER = os.path.join(ROOT_PATH, config_manager.get('DEFAULT', 'serie_folder_name'))
|
|
15
|
-
MOVIE_FOLDER = os.path.join(ROOT_PATH, config_manager.get('DEFAULT', 'movie_folder_name'))
|
|
16
|
-
|
|
17
|
-
if config_manager.get_bool("DEFAULT", "add_siteName"):
|
|
18
|
-
SERIES_FOLDER = os.path.join(ROOT_PATH, SITE_NAME, config_manager.get('DEFAULT', 'serie_folder_name'))
|
|
19
|
-
MOVIE_FOLDER = os.path.join(ROOT_PATH, SITE_NAME, config_manager.get('DEFAULT', 'movie_folder_name'))
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
# 26.05.24
|
|
2
|
-
|
|
3
|
-
import os
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
# Internal utilities
|
|
7
|
-
from StreamingCommunity.Util._jsonConfig import config_manager
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
SITE_NAME = os.path.basename(os.path.dirname(os.path.abspath(__file__)))
|
|
11
|
-
ROOT_PATH = config_manager.get('DEFAULT', 'root_path')
|
|
12
|
-
DOMAIN_NOW = config_manager.get_dict('SITE', SITE_NAME)['domain']
|
|
13
|
-
|
|
14
|
-
SERIES_FOLDER = os.path.join(ROOT_PATH, config_manager.get('DEFAULT', 'serie_folder_name'))
|
|
15
|
-
MOVIE_FOLDER = os.path.join(ROOT_PATH, config_manager.get('DEFAULT', 'movie_folder_name'))
|
|
16
|
-
|
|
17
|
-
if config_manager.get_bool("DEFAULT", "add_siteName"):
|
|
18
|
-
SERIES_FOLDER = os.path.join(ROOT_PATH, SITE_NAME, config_manager.get('DEFAULT', 'serie_folder_name'))
|
|
19
|
-
MOVIE_FOLDER = os.path.join(ROOT_PATH, SITE_NAME, config_manager.get('DEFAULT', 'movie_folder_name'))
|
|
20
|
-
|
|
21
|
-
TELEGRAM_BOT = config_manager.get_bool('DEFAULT', 'telegram_bot')
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
# 04.02.25
|
|
2
|
-
# Made by: @GiuPic
|
|
3
|
-
|
|
4
|
-
import json
|
|
5
|
-
import time
|
|
6
|
-
from typing import Optional
|
|
7
|
-
|
|
8
|
-
class RequestManager:
|
|
9
|
-
_instance = None
|
|
10
|
-
|
|
11
|
-
def __new__(cls, *args, **kwargs):
|
|
12
|
-
if not cls._instance:
|
|
13
|
-
cls._instance = super().__new__(cls)
|
|
14
|
-
return cls._instance
|
|
15
|
-
|
|
16
|
-
def __init__(self, json_file: str = "active_requests.json"):
|
|
17
|
-
if not hasattr(self, 'initialized'):
|
|
18
|
-
self.json_file = json_file
|
|
19
|
-
self.initialized = True
|
|
20
|
-
self.on_response_callback = None
|
|
21
|
-
|
|
22
|
-
def create_request(self, type: str) -> str:
|
|
23
|
-
request_data = {
|
|
24
|
-
"type": type,
|
|
25
|
-
"response": None,
|
|
26
|
-
"timestamp": time.time()
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
with open(self.json_file, "w") as f:
|
|
30
|
-
json.dump(request_data, f)
|
|
31
|
-
|
|
32
|
-
return "Ok"
|
|
33
|
-
|
|
34
|
-
def save_response(self, message_text: str) -> bool:
|
|
35
|
-
try:
|
|
36
|
-
# Carica il file JSON
|
|
37
|
-
with open(self.json_file, "r") as f:
|
|
38
|
-
data = json.load(f)
|
|
39
|
-
|
|
40
|
-
# Controlla se esiste la chiave 'type' e se la risposta è presente
|
|
41
|
-
if "type" in data and "response" in data:
|
|
42
|
-
data["response"] = message_text # Aggiorna la risposta
|
|
43
|
-
|
|
44
|
-
with open(self.json_file, "w") as f:
|
|
45
|
-
json.dump(data, f, indent=4)
|
|
46
|
-
|
|
47
|
-
return True
|
|
48
|
-
else:
|
|
49
|
-
return False
|
|
50
|
-
|
|
51
|
-
except (FileNotFoundError, json.JSONDecodeError) as e:
|
|
52
|
-
print(f"⚠️ save_response - errore: {e}")
|
|
53
|
-
return False
|
|
54
|
-
|
|
55
|
-
def get_response(self) -> Optional[str]:
|
|
56
|
-
try:
|
|
57
|
-
with open(self.json_file, "r") as f:
|
|
58
|
-
data = json.load(f)
|
|
59
|
-
|
|
60
|
-
# Verifica se esiste la chiave "response"
|
|
61
|
-
if "response" in data:
|
|
62
|
-
response = data["response"] # Ottieni la risposta direttamente
|
|
63
|
-
|
|
64
|
-
if response is not None and self.on_response_callback:
|
|
65
|
-
self.on_response_callback(response)
|
|
66
|
-
|
|
67
|
-
return response
|
|
68
|
-
|
|
69
|
-
except (FileNotFoundError, json.JSONDecodeError) as e:
|
|
70
|
-
print(f"get_response - errore: {e}")
|
|
71
|
-
return None
|
|
72
|
-
|
|
73
|
-
def clear_file(self) -> bool:
|
|
74
|
-
try:
|
|
75
|
-
with open(self.json_file, "w") as f:
|
|
76
|
-
json.dump({}, f)
|
|
77
|
-
print(f"File {self.json_file} è stato svuotato con successo.")
|
|
78
|
-
return True
|
|
79
|
-
|
|
80
|
-
except Exception as e:
|
|
81
|
-
print(f"⚠️ clear_file - errore: {e}")
|
|
82
|
-
return False
|