StreamingCommunity 3.0.4__py3-none-any.whl → 3.0.6__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 (26) hide show
  1. StreamingCommunity/Api/Site/1337xx/__init__.py +3 -2
  2. StreamingCommunity/Api/Site/altadefinizione/__init__.py +2 -1
  3. StreamingCommunity/Api/Site/animeunity/__init__.py +2 -1
  4. StreamingCommunity/Api/Site/animeworld/__init__.py +3 -2
  5. StreamingCommunity/Api/Site/guardaserie/__init__.py +3 -2
  6. StreamingCommunity/Api/Site/raiplay/__init__.py +3 -2
  7. StreamingCommunity/Api/Site/streamingcommunity/__init__.py +17 -2
  8. StreamingCommunity/Api/Site/streamingcommunity/film.py +1 -1
  9. StreamingCommunity/Api/Site/streamingcommunity/series.py +2 -2
  10. StreamingCommunity/Api/Site/streamingcommunity/site.py +27 -6
  11. StreamingCommunity/Api/Site/streamingcommunity/util/ScrapeSerie.py +4 -5
  12. StreamingCommunity/Api/Site/streamingwatch/__init__.py +3 -2
  13. StreamingCommunity/Upload/version.py +1 -1
  14. StreamingCommunity/Util/config_json.py +7 -4
  15. StreamingCommunity/global_search.py +2 -1
  16. StreamingCommunity/run.py +43 -70
  17. {streamingcommunity-3.0.4.dist-info → streamingcommunity-3.0.6.dist-info}/METADATA +216 -237
  18. {streamingcommunity-3.0.4.dist-info → streamingcommunity-3.0.6.dist-info}/RECORD +22 -26
  19. StreamingCommunity/Api/Site/ddlstreamitaly/__init__.py +0 -74
  20. StreamingCommunity/Api/Site/ddlstreamitaly/series.py +0 -118
  21. StreamingCommunity/Api/Site/ddlstreamitaly/site.py +0 -87
  22. StreamingCommunity/Api/Site/ddlstreamitaly/util/ScrapeSerie.py +0 -112
  23. {streamingcommunity-3.0.4.dist-info → streamingcommunity-3.0.6.dist-info}/WHEEL +0 -0
  24. {streamingcommunity-3.0.4.dist-info → streamingcommunity-3.0.6.dist-info}/entry_points.txt +0 -0
  25. {streamingcommunity-3.0.4.dist-info → streamingcommunity-3.0.6.dist-info}/licenses/LICENSE +0 -0
  26. {streamingcommunity-3.0.4.dist-info → streamingcommunity-3.0.6.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: StreamingCommunity
3
- Version: 3.0.4
3
+ Version: 3.0.6
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
@@ -67,8 +67,11 @@ Dynamic: requires-python
67
67
 
68
68
  # 📋 Table of Contents
69
69
 
70
+ <details>
71
+ <summary>📦 Installation</summary>
72
+
70
73
  - 🔄 [Update Domains](#update-domains)
71
- - 🌐 [Available Sites](https://arrowar.github.io/StreamingDirectory/)
74
+ - 🌐 [Available Sites](https://arrowar.github.io/StreamingCommunity/)
72
75
  - 🛠️ [Installation](#installation)
73
76
  - 📦 [PyPI Installation](#1-pypi-installation)
74
77
  - 🔄 [Automatic Installation](#2-automatic-installation)
@@ -76,6 +79,11 @@ Dynamic: requires-python
76
79
  - 📝 [Manual Installation](#3-manual-installation)
77
80
  - 💻 [Win 7](https://github.com/Ghost6446/StreamingCommunity_api/wiki/Installation#win-7)
78
81
  - 📱 [Termux](https://github.com/Ghost6446/StreamingCommunity_api/wiki/Termux)
82
+ </details>
83
+
84
+ <details>
85
+ <summary>⚙️ Configuration & Usage</summary>
86
+
79
87
  - ⚙️ [Configuration](#configuration)
80
88
  - 🔧 [Default](#default-settings)
81
89
  - 📩 [Request](#requests-settings)
@@ -84,15 +92,23 @@ Dynamic: requires-python
84
92
  - 📝 [Command](#command)
85
93
  - 🔍 [Global search](#global-search)
86
94
  - 💻 [Examples of terminal](#examples-of-terminal-usage)
95
+ </details>
96
+
97
+ <details>
98
+ <summary>🔧 Advanced Features</summary>
99
+
87
100
  - 🔧 [Manual domain configuration](#update-domains)
88
101
  - 🐳 [Docker](#docker)
89
102
  - 📝 [Telegram Usage](#telegram-usage)
103
+ </details>
104
+
105
+ <details>
106
+ <summary>ℹ️ Help & Support</summary>
107
+
90
108
  - 🎓 [Tutorial](#tutorials)
91
109
  - 📝 [To do](#to-do)
92
- - 💬 [Support](#support)
93
- - 🤝 [Contribute](#contributing)
94
110
  - ⚠️ [Disclaimer](#disclaimer)
95
- - ⚡ [Contributors](#contributors)
111
+ </details>
96
112
 
97
113
  # Installation
98
114
 
@@ -147,7 +163,8 @@ python run_streaming.py
147
163
 
148
164
  ## Modules
149
165
 
150
- ### HLS Downloader
166
+ <details>
167
+ <summary>📥 HLS Downloader</summary>
151
168
 
152
169
  Download HTTP Live Streaming (HLS) content from m3u8 URLs.
153
170
 
@@ -165,8 +182,10 @@ downloader.download()
165
182
  ```
166
183
 
167
184
  See [HLS example](./Test/Download/HLS.py) for complete usage.
185
+ </details>
168
186
 
169
- ### MP4 Downloader
187
+ <details>
188
+ <summary>📽️ MP4 Downloader</summary>
170
189
 
171
190
  Direct MP4 file downloader with support for custom headers and referrer.
172
191
 
@@ -195,8 +214,10 @@ downloader.download()
195
214
  ```
196
215
 
197
216
  See [MP4 example](./Test/Download/MP4.py) for complete usage.
217
+ </details>
198
218
 
199
- ### Torrent Client
219
+ <details>
220
+ <summary>🧲 Torrent Client</summary>
200
221
 
201
222
  Download content via torrent magnet links.
202
223
 
@@ -214,67 +235,21 @@ client.start_download()
214
235
  ```
215
236
 
216
237
  See [Torrent example](./Test/Download/TOR.py) for complete usage.
217
-
218
-
219
- ## 2. Automatic Installation
220
-
221
- ### Supported Operating Systems 💿
222
-
223
- | OS | Automatic Installation Support |
224
- |:----------------|:------------------------------:|
225
- | Windows 10/11 | ✔️ |
226
- | Windows 7 | ❌ |
227
- | Debian Linux | ✔️ |
228
- | Arch Linux | ✔️ |
229
- | CentOS Stream 9 | ✔️ |
230
- | FreeBSD | ⏳ |
231
- | MacOS | ✔️ |
232
- | Termux | ❌ |
233
-
234
- ### Installation Steps
235
-
236
- #### On Windows:
237
-
238
- ```powershell
239
- .\Installer\win_install.bat
240
- ```
241
-
242
- #### On Linux/MacOS/BSD:
243
-
244
- ```bash
245
- sudo chmod +x Installer/unix_install.sh && ./Installer/unix_install.sh
246
- ```
247
-
248
- ### Usage
249
-
250
- #### On Windows:
251
-
252
- ```powershell
253
- python .\test_run.py
254
- ```
255
-
256
- or
257
-
258
- ```powershell
259
- source .venv/bin/activate && python test_run.py && deactivate
260
- ```
261
-
262
- #### On Linux/MacOS/BSD:
263
-
264
- ```bash
265
- ./test_run.py
266
- ```
238
+ </details>
267
239
 
268
240
  ## Binary Location
269
241
 
270
- ### Default Locations
242
+ <details>
243
+ <summary>📂 Default Locations</summary>
244
+
271
245
  - **Windows**: `C:\binary`
272
246
  - **MacOS**: `~/Applications/binary`
273
247
  - **Linux**: `~/.local/bin/binary`
248
+ </details>
274
249
 
275
- You can customize these locations by following these steps for your operating system:
250
+ <details>
251
+ <summary>🪟 Windows Configuration</summary>
276
252
 
277
- #### Windows
278
253
  1. Move the binary folder from `C:\binary` to your desired location
279
254
  2. Add the new path to Windows environment variables:
280
255
  - Open Start menu and search for "Environment Variables"
@@ -286,8 +261,11 @@ You can customize these locations by following these steps for your operating sy
286
261
  - Click "OK" to save changes
287
262
 
288
263
  For detailed Windows PATH instructions, see the [Windows PATH guide](https://www.eukhost.com/kb/how-to-add-to-the-path-on-windows-10-and-windows-11/).
264
+ </details>
265
+
266
+ <details>
267
+ <summary>🍎 MacOS Configuration</summary>
289
268
 
290
- #### MacOS
291
269
  1. Move the binary folder from `~/Applications/binary` to your desired location
292
270
  2. Add the new path to your shell's configuration file:
293
271
  ```bash
@@ -305,8 +283,11 @@ For detailed Windows PATH instructions, see the [Windows PATH guide](https://www
305
283
  # For zsh
306
284
  source ~/.zshrc
307
285
  ```
286
+ </details>
287
+
288
+ <details>
289
+ <summary>🐧 Linux Configuration</summary>
308
290
 
309
- #### Linux
310
291
  1. Move the binary folder from `~/.local/bin/binary` to your desired location
311
292
  2. Add the new path to your shell's configuration file:
312
293
  ```bash
@@ -322,6 +303,7 @@ For detailed Windows PATH instructions, see the [Windows PATH guide](https://www
322
303
  # or
323
304
  source ~/.zshrc # for zsh
324
305
  ```
306
+ </details>
325
307
 
326
308
  > [!IMPORTANT]
327
309
  > After moving the binary folder, ensure that all executables (ffmpeg, ffprobe, ffplay) are present in the new location and have the correct permissions:
@@ -330,19 +312,24 @@ For detailed Windows PATH instructions, see the [Windows PATH guide](https://www
330
312
 
331
313
  ## 3. Manual Installation
332
314
 
333
- ### Requirements 📋
315
+ <details>
316
+ <summary>📋 Requirements</summary>
334
317
 
335
318
  Prerequisites:
336
319
  * [Python](https://www.python.org/downloads/) > 3.8
337
320
  * [FFmpeg](https://www.gyan.dev/ffmpeg/builds/)
321
+ </details>
338
322
 
339
- ### Install Python Dependencies
323
+ <details>
324
+ <summary>⚙️ Python Dependencies</summary>
340
325
 
341
326
  ```bash
342
327
  pip install -r requirements.txt
343
328
  ```
329
+ </details>
344
330
 
345
- ### Usage
331
+ <details>
332
+ <summary>🚀 Usage</summary>
346
333
 
347
334
  #### On Windows:
348
335
 
@@ -355,6 +342,7 @@ python test_run.py
355
342
  ```bash
356
343
  python3 test_run.py
357
344
  ```
345
+ </details>
358
346
 
359
347
  ## Update
360
348
 
@@ -374,13 +362,58 @@ python3 update.py
374
362
 
375
363
  <br>
376
364
 
365
+ ## Update Domains
366
+
367
+ <details>
368
+ <summary>🌐 Domain Configuration Methods</summary>
369
+
370
+ There are two ways to update the domains for the supported websites:
371
+
372
+ ### 1. Using Local Configuration
373
+
374
+ 1. Create a `domains.json` file in the root directory of the project
375
+
376
+ 2. Add your domain configuration in the following format:
377
+ ```json
378
+ {
379
+ "altadefinizione": {
380
+ "domain": "si",
381
+ "full_url": "https://altadefinizione.si/"
382
+ },
383
+ ...
384
+ }
385
+ ```
386
+
387
+ 3. Set `use_api` to `false` in the `DEFAULT` section of your `config.json`:
388
+ ```json
389
+ {
390
+ "DEFAULT": {
391
+ "use_api": false
392
+ }
393
+ }
394
+ ```
395
+
396
+ ### 2. Using API (Legacy)
397
+
398
+ The API-based domain updates are currently deprecated. To use it anyway, set `use_api` to `true` in your `config.json` file.
399
+
400
+ Note: If `use_api` is set to `false` and no `domains.json` file is found, the script will raise an error.
401
+
402
+ #### 💡 Adding a New Site to the Legacy API
403
+ If you want to add a new site to the legacy API, just message me on the Discord server, and I'll add it!
404
+
405
+ </details>
406
+
377
407
  # Configuration
378
408
 
379
- You can change some behaviors by tweaking the configuration file.
409
+ <details>
410
+ <summary>⚙️ Overview</summary>
380
411
 
381
- The configuration file is divided into several main sections:
412
+ You can change some behaviors by tweaking the configuration file. The configuration file is divided into several main sections.
413
+ </details>
382
414
 
383
- ## DEFAULT Settings
415
+ <details>
416
+ <summary>🔧 DEFAULT Settings</summary>
384
417
 
385
418
  ```json
386
419
  {
@@ -408,8 +441,10 @@ The configuration file is divided into several main sections:
408
441
  - `telegram_bot`: Enables Telegram bot integration
409
442
  - `download_site_data`: If set to false, disables automatic site data download
410
443
  - `validate_github_config`: If set to false, disables validation and updating of configuration from GitHub
444
+ </details>
411
445
 
412
- ## OUT_FOLDER Settings
446
+ <details>
447
+ <summary>📁 OUT_FOLDER Settings</summary>
413
448
 
414
449
  ```json
415
450
  {
@@ -424,42 +459,30 @@ The configuration file is divided into several main sections:
424
459
  }
425
460
  ```
426
461
 
462
+ #### Directory Configuration
427
463
  - `root_path`: Directory where all videos will be saved
428
-
429
- ### Path examples:
430
- * Windows: `C:\\MyLibrary\\Folder` or `\\\\MyServer\\MyLibrary` (if you want to use a network folder)
464
+ * Windows: `C:\\MyLibrary\\Folder` or `\\\\MyServer\\MyLibrary` (network folder)
431
465
  * Linux/MacOS: `Desktop/MyLibrary/Folder`
432
- <br/><br/>
433
-
434
- - `movie_folder_name`: The name of the subdirectory where movies will be stored
435
- * Can be changed from terminal with `--movie_folder_name`
436
- <br/><br/>
437
466
 
438
- - `serie_folder_name`: The name of the subdirectory where TV series will be stored
439
- * Can be changed from terminal with `--serie_folder_name`
440
- <br/><br/>
441
-
442
- - `anime_folder_name`: The name of the subdirectory where anime will be stored
443
- * Can be changed from terminal with `--anime_folder_name`
444
- <br/><br/>
467
+ #### Folder Names
468
+ - `movie_folder_name`: Subdirectory for movies (can be changed with `--movie_folder_name`)
469
+ - `serie_folder_name`: Subdirectory for TV series (can be changed with `--serie_folder_name`)
470
+ - `anime_folder_name`: Subdirectory for anime (can be changed with `--anime_folder_name`)
445
471
 
472
+ #### Episode Naming
446
473
  - `map_episode_name`: Template for episode filenames
474
+ * `%(tv_name)`: Name of TV Show
475
+ * `%(season)`: Season number
476
+ * `%(episode)`: Episode number
477
+ * `%(episode_name)`: Episode name
478
+ * Can be changed with `--map_episode_name`
447
479
 
448
- ### Episode name usage:
449
-
450
- You can choose different vars:
451
- * `%(tv_name)` : Is the name of TV Show
452
- * `%(season)` : Is the number of the season
453
- * `%(episode)` : Is the number of the episode
454
- * `%(episode_name)` : Is the name of the episode
455
- * Can be changed from terminal with `--map_episode_name`
456
- <br><br>
480
+ #### Additional Options
481
+ - `add_siteName`: Appends site_name to root path (can be changed with `--add_siteName true/false`)
482
+ </details>
457
483
 
458
- - `add_siteName`: If set to true, appends the site_name to the root path before the movie and serie folders
459
- * Can be changed from terminal with `--add_siteName true/false`
460
- <br/><br/>
461
-
462
- ## QBIT_CONFIG Settings
484
+ <details>
485
+ <summary>🔄 QBIT_CONFIG Settings</summary>
463
486
 
464
487
  ```json
465
488
  {
@@ -473,8 +496,10 @@ The configuration file is divided into several main sections:
473
496
  ```
474
497
 
475
498
  To enable qBittorrent integration, follow the setup guide [here](https://github.com/lgallard/qBittorrent-Controller/wiki/How-to-enable-the-qBittorrent-Web-UI).
499
+ </details>
476
500
 
477
- ## REQUESTS Settings
501
+ <details>
502
+ <summary>📡 REQUESTS Settings</summary>
478
503
 
479
504
  ```json
480
505
  {
@@ -489,8 +514,10 @@ To enable qBittorrent integration, follow the setup guide [here](https://github.
489
514
  - `verify`: Verifies SSL certificates
490
515
  - `timeout`: Maximum timeout (in seconds) for each request
491
516
  - `max_retry`: Number of retry attempts per segment during M3U8 index download
517
+ </details>
492
518
 
493
- ## M3U8_DOWNLOAD Settings
519
+ <details>
520
+ <summary>📥 M3U8_DOWNLOAD Settings</summary>
494
521
 
495
522
  ```json
496
523
  {
@@ -515,31 +542,32 @@ To enable qBittorrent integration, follow the setup guide [here](https://github.
515
542
  }
516
543
  ```
517
544
 
545
+ #### Performance Settings
518
546
  - `tqdm_delay`: Delay between progress bar updates
519
547
  - `default_video_workser`: Number of threads for video download
520
- * Can be changed from terminal with `--default_video_worker <number>`
521
- <br/><br/>
522
-
548
+ * Can be changed with `--default_video_worker <number>`
523
549
  - `default_audio_workser`: Number of threads for audio download
524
- * Can be changed from terminal with `--default_audio_worker <number>`
525
- <br/><br/>
526
-
550
+ * Can be changed with `--default_audio_worker <number>`
527
551
  - `segment_timeout`: Timeout for downloading individual segments
552
+
553
+ #### Audio Settings
528
554
  - `download_audio`: Whether to download audio tracks
529
555
  - `merge_audio`: Whether to merge audio with video
530
556
  - `specific_list_audio`: List of audio languages to download
531
- * Can be changed from terminal with `--specific_list_audio ita,eng`
532
- <br/><br/>
557
+ * Can be changed with `--specific_list_audio ita,eng`
533
558
 
559
+ #### Subtitle Settings
534
560
  - `download_subtitle`: Whether to download subtitles
535
561
  - `merge_subs`: Whether to merge subtitles with video
536
562
  - `specific_list_subtitles`: List of subtitle languages to download
537
- * Can be changed from terminal with `--specific_list_subtitles ita,eng`
538
- <br/><br/>
563
+ * Can be changed with `--specific_list_subtitles ita,eng`
539
564
 
565
+ #### Cleanup
540
566
  - `cleanup_tmp_folder`: Remove temporary .ts files after download
567
+ </details>
541
568
 
542
- ## Available Language Codes
569
+ <details>
570
+ <summary>🌍 Available Language Codes</summary>
543
571
 
544
572
  | European | Asian | Middle Eastern | Others |
545
573
  |-----------------|-----------------|-----------------|-----------------|
@@ -551,8 +579,10 @@ To enable qBittorrent integration, follow the setup guide [here](https://github.
551
579
  | swe - Swedish | tam - Tamil | | vie - Vietnamese|
552
580
  | pol - Polish | tel - Telugu | | |
553
581
  | ukr - Ukrainian | tha - Thai | | |
582
+ </details>
554
583
 
555
- ## M3U8_CONVERSION Settings
584
+ <details>
585
+ <summary>🎥 M3U8_CONVERSION Settings</summary>
556
586
 
557
587
  ```json
558
588
  {
@@ -567,19 +597,16 @@ To enable qBittorrent integration, follow the setup guide [here](https://github.
567
597
  }
568
598
  ```
569
599
 
600
+ #### Basic Settings
570
601
  - `use_codec`: Use specific codec settings
571
602
  - `use_vcodec`: Use specific video codec
572
603
  - `use_acodec`: Use specific audio codec
573
604
  - `use_bitrate`: Apply bitrate settings
574
605
  - `use_gpu`: Enable GPU acceleration (if available)
575
- - `default_preset`: FFmpeg encoding preset (ultrafast, fast, medium, slow, etc.)
576
-
577
- ### Advanced M3U8 Conversion Options
578
-
579
- The software supports various advanced encoding options via FFmpeg:
606
+ - `default_preset`: FFmpeg encoding preset
580
607
 
581
608
  #### Encoding Presets
582
- The `default_preset` configuration can be set to one of the following values:
609
+ The `default_preset` configuration can be set to:
583
610
  - `ultrafast`: Extremely fast conversion but larger file size
584
611
  - `superfast`: Very fast with good quality/size ratio
585
612
  - `veryfast`: Fast with good compression
@@ -591,14 +618,16 @@ The `default_preset` configuration can be set to one of the following values:
591
618
  - `veryslow`: Maximum quality, very slow process
592
619
 
593
620
  #### GPU Acceleration
594
- When `use_gpu` is enabled, the system will use available hardware acceleration:
621
+ When `use_gpu` is enabled, supports:
595
622
  - NVIDIA: NVENC
596
623
  - AMD: AMF
597
624
  - Intel: QSV
598
625
 
599
- You need to have updated drivers and FFmpeg compiled with hardware acceleration support.
626
+ Note: Requires updated drivers and FFmpeg with hardware acceleration support.
627
+ </details>
600
628
 
601
- ## M3U8_PARSER Settings
629
+ <details>
630
+ <summary>🔍 M3U8_PARSER Settings</summary>
602
631
 
603
632
  ```json
604
633
  {
@@ -609,95 +638,45 @@ You need to have updated drivers and FFmpeg compiled with hardware acceleration
609
638
  }
610
639
  ```
611
640
 
612
- - `force_resolution`: Choose the video resolution for downloading:
613
- * `"Best"`: Highest available resolution
614
- * `"Worst"`: Lowest available resolution
615
- * `"720p"`: Force 720p resolution
616
- * Or specify one of these resolutions:
617
- - 1080p (1920x1080)
618
- - 720p (1280x720)
619
- - 480p (640x480)
620
- - 360p (640x360)
621
- - 320p (480x320)
622
- - 240p (426x240)
623
- - 240p (320x240)
624
- - 144p (256x144)
625
-
641
+ #### Resolution Options
642
+ - `force_resolution`: Choose video resolution:
643
+ * `"Best"`: Highest available resolution
644
+ * `"Worst"`: Lowest available resolution
645
+ * `"720p"`: Force 720p resolution
646
+ * Specific resolutions:
647
+ - 1080p (1920x1080)
648
+ - 720p (1280x720)
649
+ - 480p (640x480)
650
+ - 360p (640x360)
651
+ - 320p (480x320)
652
+ - 240p (426x240)
653
+ - 240p (320x240)
654
+ - 144p (256x144)
655
+
656
+ #### Link Options
626
657
  - `get_only_link`: Return M3U8 playlist/index URL instead of downloading
627
-
628
- ## SITE_EXTRA Settings
629
-
630
- ```json
631
- {
632
- "SITE_EXTRA": {
633
- "ddlstreamitaly": {
634
- "ips4_device_key": "",
635
- "ips4_member_id": "",
636
- "ips4_login_key": ""
637
- }
638
- }
639
- }
640
- ```
641
-
642
- - Site-specific configuration for `ddlstreamitaly`:
643
- - `ips4_device_key`: Device key for authentication
644
- - `ips4_member_id`: Member ID for authentication
645
- - `ips4_login_key`: Login key for authentication
646
-
647
- ## Update Domains
648
-
649
- There are two ways to update the domains for the supported websites:
650
-
651
- ### 1. Using Local Configuration
652
-
653
- 1. Create a `domains.json` file in the root directory of the project
654
-
655
- 2. Add your domain configuration in the following format:
656
- ```json
657
- {
658
- "altadefinizione": {
659
- "domain": "si",
660
- "full_url": "https://altadefinizione.si/"
661
- },
662
- ...
663
- }
664
- ```
665
-
666
- 3. Set `use_api` to `false` in the `DEFAULT` section of your `config.json`:
667
- ```json
668
- {
669
- "DEFAULT": {
670
- "use_api": false
671
- }
672
- }
673
- ```
674
-
675
- ### 2. Using API (Legacy)
676
-
677
- The API-based domain updates are currently deprecated. To use it anyway, set `use_api` to `true` in your `config.json` file.
678
-
679
- Note: If `use_api` is set to `false` and no `domains.json` file is found, the script will raise an error.
680
-
681
- #### 💡 Adding a New Site to the Legacy API
682
- If you want to add a new site to the legacy API, just message me on the Discord server, and I'll add it!
658
+ </details>
683
659
 
684
660
  # Global Search
685
661
 
686
- You can now search across multiple streaming sites at once using the Global Search feature. This allows you to find content more efficiently without having to search each site individually.
662
+ <details>
663
+ <summary>🔍 Feature Overview</summary>
687
664
 
688
- ## Using Global Search
689
-
690
- The Global Search feature provides a unified interface to search across all supported sites:
665
+ You can now search across multiple streaming sites at once using the Global Search feature. This allows you to find content more efficiently without having to search each site individually.
666
+ </details>
691
667
 
692
- ## Search Options
668
+ <details>
669
+ <summary>🎯 Search Options</summary>
693
670
 
694
671
  When using Global Search, you have three ways to select which sites to search:
695
672
 
696
673
  1. **Search all sites** - Searches across all available streaming sites
697
674
  2. **Search by category** - Group sites by their categories (movies, series, anime, etc.)
698
675
  3. **Select specific sites** - Choose individual sites to include in your search
676
+ </details>
699
677
 
700
- ## Navigation and Selection
678
+ <details>
679
+ <summary>📝 Navigation and Selection</summary>
701
680
 
702
681
  After performing a search:
703
682
 
@@ -709,13 +688,16 @@ After performing a search:
709
688
  2. Select an item by number to view details or download
710
689
 
711
690
  3. The system will automatically use the appropriate site's API to handle the download
691
+ </details>
712
692
 
713
- ## Command Line Arguments
693
+ <details>
694
+ <summary>⌨️ Command Line Arguments</summary>
714
695
 
715
696
  The Global Search can be configured from the command line:
716
697
 
717
698
  - `--global` - Perform a global search across multiple sites.
718
699
  - `-s`, `--search` - Specify the search terms.
700
+ </details>
719
701
 
720
702
  # Examples of terminal usage
721
703
 
@@ -735,25 +717,32 @@ python test_run.py --global -s "cars"
735
717
 
736
718
  # Docker
737
719
 
738
- You can run the script in a docker container, to build the image just run
720
+ <details>
721
+ <summary>🐳 Basic Setup</summary>
739
722
 
723
+ Build the image:
740
724
  ```
741
725
  docker build -t streaming-community-api .
742
726
  ```
743
727
 
744
- and to run it use
745
-
728
+ Run the container with Cloudflare DNS for better connectivity:
746
729
  ```
747
- docker run -it -p 8000:8000 streaming-community-api
730
+ docker run -it --dns 1.1.1.1 -p 8000:8000 streaming-community-api
748
731
  ```
732
+ </details>
749
733
 
750
- By default the videos will be saved in `/app/Video` inside the container, if you want to to save them in your machine instead of the container just run
734
+ <details>
735
+ <summary>💾 Custom Storage Location</summary>
736
+
737
+ By default the videos will be saved in `/app/Video` inside the container. To save them on your machine:
751
738
 
752
739
  ```
753
- docker run -it -p 8000:8000 -v /path/to/download:/app/Video streaming-community-api
740
+ docker run -it --dns 9.9.9.9 -p 8000:8000 -v /path/to/download:/app/Video streaming-community-api
754
741
  ```
742
+ </details>
755
743
 
756
- ### Docker quick setup with Make
744
+ <details>
745
+ <summary>🛠️ Quick Setup with Make</summary>
757
746
 
758
747
  Inside the Makefile (install `make`) are already configured two commands to build and run the container:
759
748
 
@@ -765,52 +754,57 @@ make LOCAL_DIR=/path/to/download run-container
765
754
  ```
766
755
 
767
756
  The `run-container` command mounts also the `config.json` file, so any change to the configuration file is reflected immediately without having to rebuild the image.
757
+ </details>
768
758
 
769
759
  # Telegram Usage
770
760
 
771
- ## Configuration
761
+ <details>
762
+ <summary>⚙️ Basic Configuration</summary>
772
763
 
773
764
  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.
774
765
 
775
766
  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.
767
+ </details>
768
+
769
+ <details>
770
+ <summary>🤖 Bot Commands</summary>
776
771
 
777
772
  Command Functions:
778
773
 
779
774
  🔹 /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.
780
775
 
781
776
  🔹 /list – Displays the status of active downloads, with options to:
782
-
783
- Stop an incorrect download using /stop <ID>.
784
-
785
- View the real-time output of a download using /screen <ID>.
777
+ - Stop an incorrect download using /stop <ID>
778
+ - View the real-time output of a download using /screen <ID>
786
779
 
787
780
  ⚠ 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.
781
+ </details>
788
782
 
789
- 🛠 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.
783
+ <details>
784
+ <summary>🔧 Environment Setup</summary>
790
785
 
791
- ## .env Example:
792
-
793
- You need to create an .env file and enter your Telegram token and user ID to authorize only one user to use it
786
+ Create an `.env` file with:
794
787
 
795
788
  ```
796
789
  TOKEN_TELEGRAM=IlTuo2131TOKEN$12D3Telegram
797
790
  AUTHORIZED_USER_ID=12345678
798
791
  DEBUG=False
799
792
  ```
793
+ </details>
800
794
 
801
- ## Install Python Dependencies
795
+ <details>
796
+ <summary>📥 Dependencies & Launch</summary>
802
797
 
798
+ Install dependencies:
803
799
  ```bash
804
800
  pip install -r requirements.txt
805
801
  ```
806
802
 
807
- ## On Linux/MacOS:
808
-
809
- Start the bot from the folder /StreamingCommunity/TelegramHelp
810
-
803
+ Start the bot (from /StreamingCommunity/TelegramHelp):
811
804
  ```bash
812
805
  python3 telegram_bot.py
813
806
  ```
807
+ </details>
814
808
 
815
809
  # Tutorials
816
810
 
@@ -824,19 +818,6 @@ python3 telegram_bot.py
824
818
  - To Finish [website API](https://github.com/Arrowar/StreamingCommunity/tree/test_gui_1)
825
819
  - To finish [website API 2](https://github.com/hydrosh/StreamingCommunity/tree/test_gui_1)
826
820
 
827
- # Contributing
828
-
829
- Contributions are welcome! Steps:
830
- 1. Fork the repository
831
- 2. Create feature branch (`git checkout -b feature/AmazingFeature`)
832
- 3. Commit changes (`git commit -m 'Add some AmazingFeature'`)
833
- 4. Push to branch (`git push origin feature/AmazingFeature`)
834
- 5. Open Pull Request
835
-
836
- # Disclaimer
837
-
838
- This software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose, and noninfringement. In no event shall the authors or copyright holders be liable for any claim, damages, or other liability, whether in an action of contract, tort, or otherwise, arising from, out of, or in connection with the software or the use or other dealings in the software.
839
-
840
821
  ## Useful Project
841
822
 
842
823
  ### 🎯 [Unit3Dup](https://github.com/31December99/Unit3Dup)
@@ -852,8 +833,6 @@ API non ufficiale per accedere ai contenuti del sito italiano StreamingCommunity
852
833
  ### 🎥 [stream-buddy](https://github.com/Bbalduzz/stream-buddy)
853
834
  Tool per guardare o scaricare film dalla piattaforma StreamingCommunity.
854
835
 
855
- ## Contributors
836
+ # Disclaimer
856
837
 
857
- <a href="https://github.com/Arrowar/StreamingCommunity/graphs/contributors" alt="View Contributors">
858
- <img src="https://contrib.rocks/image?repo=Arrowar/StreamingCommunity&max=1000&columns=10" alt="Contributors" />
859
- </a>
838
+ This software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose, and noninfringement. In no event shall the authors or copyright holders be liable for any claim, damages, or other liability, whether in an action of contract, tort, or otherwise, arising from, out of, or in connection with the software or the use or other dealings in the software.