Skip to content

Lovi-0/StreamingCommunity

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

73 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

This repository provide a simple script designed to downloading films and series from a variety of supported streaming platforms. SITE

Join us 🌟

You can chat, help improve this repo, or just hang around for some fun in the Git_StreamingCommunity Discord Server

Table of Contents

INSTALLATION

Automatic Installation

Supported OSs for Automatic Installation πŸ’Ώ

  • Supported βœ”οΈ
  • Not tested ⏳
  • Not supported ❌
OS Automatic Installation Support
Windows 10/11 βœ”οΈ
Windows 7 ❌
Debian Linux βœ”οΈ
Arch Linux βœ”οΈ
CentOS Stream 9 βœ”οΈ
FreeBSD ⏳
MacOS βœ”οΈ
Termux ❌

Installation βš™οΈ

Run the following command inside the main directory:

On Windows:

.\win_install.bat

On Linux/MacOS/BSD:

sudo chmod +x unix_install.sh && ./unix_install.sh

<a id="usage-automatic"></a>

Usage πŸ“š

Run the script with the following command:

On Windows:

python .\run.py

or

source .venv/bin/activate && python run.py && deactivate

On Linux/MacOS/BSD:

./run.py

Manual Installation

<a id="requirement"></a>

Requirement πŸ“‹

Make sure you have the following prerequisites installed on your system:

Installation βš™οΈ

Install the required Python libraries using the following command:

pip install -r requirements.txt

Usage πŸ“š

Run the script with the following command:

On Windows:

python run.py

On Linux/MacOS:

python3 run.py

Update

Keep your script up to date with the latest features by running:

On Windows:

python update_version.py

On Linux/MacOS:

python3 update_version.py

Configuration βš™οΈ

You can change some behaviors by tweaking the configuration file.

The configuration file is divided into several main sections:

DEFAULT Settings

{
    "root_path": "Video",
    "map_episode_name": "%(tv_name)_S%(season)E%(episode)_%(episode_name)",
    "special_chars_to_remove": "!@#$%^&*()[]{}<>|`~'\";:,?=+\u00e2\u20ac\u00a6",
    "not_close": false,
    "show_trending": false
}
  • root_path: Directory where all videos will be saved

    Path examples:

    • Windows: C:\\MyLibrary\\Folder or \\\\MyServer\\MyLibrary (if you want to use a network folder)
    • Linux/MacOS: Desktop/MyLibrary/Folder <br/><br/>
  • map_episode_name: Template for TV series episode filenames

    Episode name usage:

    You can choose different vars:

    • %(tv_name) : Is the name of TV Show
    • %(season) : Is the number of the season
    • %(episode) : Is the number of the episode
    • %(episode_name) : Is the name of the episode <br/><br/>
  • special_chars_to_remove: Special characters to be removed from filenames

  • not_close: If true, continues running after downloading

  • show_trending: Display trending content on startup

qBittorrent Configuration

{
    "config_qbit_tor": {
        "host": "192.168.1.59",
        "port": "8080",
        "user": "admin",
        "pass": "adminadmin"
    }
}

To enable qBittorrent integration, follow the setup guide here.

REQUESTS Settings

{
    "timeout": 20,
    "max_retry": 3
}
  • timeout: Maximum timeout (in seconds) for each request
  • max_retry: Number of retry attempts per segment during M3U8 index download

BROWSER Settings

{
    "headless": false
}
  • headless: Controls whether to run browser in headless mode

M3U8_DOWNLOAD Settings

{
    "tqdm_delay": 0.01,
    "tqdm_use_large_bar": true,
    "default_video_workser": 12,
    "default_audio_workser": 12,
    "cleanup_tmp_folder": true
}
  • tqdm_delay: Delay between progress bar updates
  • tqdm_use_large_bar: Use detailed progress bar (recommended for desktop) set to false for mobile
  • default_video_workser: Number of threads for video download
  • default_audio_workser: Number of threads for audio download
  • cleanup_tmp_folder: Remove temporary .ts files after download

Language Settings

The following codes can be used for specific_list_audio and specific_list_subtitles:

ara - Arabic       eng - English      ita - Italian     por - Portuguese
baq - Basque       fil - Filipino     jpn - Japanese    rum - Romanian
cat - Catalan      fin - Finnish      kan - Kannada     rus - Russian
chi - Chinese      fre - French       kor - Korean      spa - Spanish
cze - Czech        ger - German       mal - Malayalam   swe - Swedish
dan - Danish       glg - Galician     may - Malay       tam - Tamil
dut - Dutch        gre - Greek        nob - Norw. Bokm  tel - Telugu
                   heb - Hebrew       nor - Norwegian    tha - Thai
forced-ita         hin - Hindi        pol - Polish      tur - Turkish
                   hun - Hungarian                       ukr - Ukrainian
                   ind - Indonesian                      vie - Vietnamese

Important

Language code availability may vary by site. Some platforms might:

  • Use different language codes
  • Support only a subset of these languages
  • Offer additional languages not listed here

Check the specific site's available options if downloads fail.

Tip

You can configure multiple languages by adding them to the lists:

"specific_list_audio": ["ita", "eng", "spa"],
"specific_list_subtitles": ["ita", "eng", "spa"]

M3U8_PARSER Settings

{
    "force_resolution": -1,
    "get_only_link": false
}
  • force_resolution: Force specific resolution (-1 for best available, or specify 1080, 720, 360)
  • get_only_link: Return M3U8 playlist/index URL instead of downloading

Docker 🐳

You can run the script in a docker container, to build the image just run

docker build -t streaming-community-api .

and to run it use

docker run -it -p 8000:8000 streaming-community-api

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

docker run -it -p 8000:8000 -v /path/to/download:/app/Video streaming-community-api

Docker quick setup with Make

Inside the Makefile (install make) are already configured two commands to build and run the container:

make build-container

# set your download directory as ENV variable
make LOCAL_DIR=/path/to/download run-container

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.

Website Status 🌐

  • Working βœ…
  • Not Working ❌
Website Status
1337xx βœ…
Altadefinizione βœ…
AnimeUnity βœ…
BitSearch βœ…
CB01New βœ…
DDLStreamItaly βœ…
GuardaSerie βœ…
MostraGuarda βœ…
PirateBays βœ…
StreamingCommunity βœ…

Tutorial πŸ“–

win linux

To do πŸ“

  • GUI
  • Website api
  • Add other site