mirror of
https://github.com/Arrowar/StreamingCommunity.git
synced 2025-06-05 02:55:25 +00:00
v1.9.0
This commit is contained in:
parent
c969ac7d66
commit
d9439aeaf7
170
README.md
170
README.md
@ -4,29 +4,34 @@
|
||||
|
||||
A versatile script designed to download films and series from various supported streaming platforms.
|
||||
|
||||
## 🤝 Join our Community
|
||||
# 🤝 Join our Community
|
||||
|
||||
Chat, contribute, and have fun in our **Git_StreamingCommunity** Discord [Server](https://discord.com/invite/8vV68UGRc7)
|
||||
|
||||
## 📋 Table of Contents
|
||||
# 📋 Table of Contents
|
||||
|
||||
- [Website available](#-website-status)
|
||||
- [Release files](#-release-files)
|
||||
- [Website available](#website-status)
|
||||
- [Installation](#installation)
|
||||
- [PyPI Installation](#pypi-installation)
|
||||
- [Automatic Installation](#automatic-installation)
|
||||
- [Manual Installation](#manual-installation)
|
||||
- [PyPI Installation](#1-pypi-installation)
|
||||
- [Automatic Installation](#2-automatic-installation)
|
||||
- [Manual Installation](#3-manual-installation)
|
||||
- [Win 7](https://github.com/Ghost6446/StreamingCommunity_api/wiki/Installation#win-7)
|
||||
- [Termux](https://github.com/Ghost6446/StreamingCommunity_api/wiki/Termux)
|
||||
- [Configuration](#configuration)
|
||||
- [DOCKER](#docker)
|
||||
- [Tutorial](#tutorial)
|
||||
- [Default](#default-settings)
|
||||
- [Request](#requests-settings)
|
||||
- [Browser](#browser-settings)
|
||||
- [Download](#m3u8_download-settings)
|
||||
- [Parser](#m3u8_parser-settings)
|
||||
- [Docker](#docker)
|
||||
- [Tutorial](#tutorials)
|
||||
- [To Do](#to-do)
|
||||
|
||||
|
||||
## 💻 Installation
|
||||
|
||||
### 1. PyPI Installation
|
||||
# Installation
|
||||
|
||||
## 1. PyPI Installation
|
||||
|
||||
Install directly from PyPI:
|
||||
|
||||
@ -34,7 +39,7 @@ Install directly from PyPI:
|
||||
pip install StreamingCommunity
|
||||
```
|
||||
|
||||
#### Creating a Run Script
|
||||
### Creating a Run Script
|
||||
|
||||
Create `run_streaming.py`:
|
||||
|
||||
@ -50,15 +55,15 @@ Run the script:
|
||||
python run_streaming.py
|
||||
```
|
||||
|
||||
#### Updating via PyPI
|
||||
## Updating via PyPI
|
||||
|
||||
```bash
|
||||
pip install --upgrade StreamingCommunity
|
||||
```
|
||||
|
||||
### 2. Automatic Installation
|
||||
## 2. Automatic Installation
|
||||
|
||||
#### Supported Operating Systems 💿
|
||||
### Supported Operating Systems 💿
|
||||
|
||||
| OS | Automatic Installation Support |
|
||||
|:----------------|:------------------------------:|
|
||||
@ -71,100 +76,93 @@ pip install --upgrade StreamingCommunity
|
||||
| MacOS | ✔️ |
|
||||
| Termux | ❌ |
|
||||
|
||||
#### Installation Steps
|
||||
### Installation Steps
|
||||
|
||||
##### On Windows:
|
||||
#### On Windows:
|
||||
|
||||
```powershell
|
||||
.\win_install.bat
|
||||
```
|
||||
|
||||
##### On Linux/MacOS/BSD:
|
||||
#### On Linux/MacOS/BSD:
|
||||
|
||||
```bash
|
||||
sudo chmod +x unix_install.sh && ./unix_install.sh
|
||||
```
|
||||
|
||||
#### Usage
|
||||
### Usage
|
||||
|
||||
##### On Windows:
|
||||
#### On Windows:
|
||||
|
||||
```powershell
|
||||
python .\run.py
|
||||
python .\test_run.py
|
||||
```
|
||||
|
||||
or
|
||||
|
||||
```powershell
|
||||
source .venv/bin/activate && python run.py && deactivate
|
||||
source .venv/bin/activate && python test_run.py && deactivate
|
||||
```
|
||||
|
||||
##### On Linux/MacOS/BSD:
|
||||
#### On Linux/MacOS/BSD:
|
||||
|
||||
```bash
|
||||
./run.py
|
||||
./test_run.py
|
||||
```
|
||||
|
||||
### 3. Manual Installation
|
||||
## 3. Manual Installation
|
||||
|
||||
#### Requirements 📋
|
||||
### Requirements 📋
|
||||
|
||||
Prerequisites:
|
||||
* [Python](https://www.python.org/downloads/) > 3.8
|
||||
* [FFmpeg](https://www.gyan.dev/ffmpeg/builds/)
|
||||
|
||||
#### Install Python Dependencies
|
||||
### Install Python Dependencies
|
||||
|
||||
```bash
|
||||
pip install -r requirements.txt
|
||||
```
|
||||
|
||||
#### Usage
|
||||
|
||||
##### On Windows:
|
||||
|
||||
```powershell
|
||||
python run.py
|
||||
```
|
||||
|
||||
##### On Linux/MacOS:
|
||||
|
||||
```bash
|
||||
python3 run.py
|
||||
```
|
||||
|
||||
### Update
|
||||
|
||||
Keep your script up to date with the latest features by running:
|
||||
### Usage
|
||||
|
||||
#### On Windows:
|
||||
|
||||
```powershell
|
||||
python update.py
|
||||
python test_run.py
|
||||
```
|
||||
|
||||
#### On Linux/MacOS:
|
||||
|
||||
```bash
|
||||
python3 test_run.py
|
||||
```
|
||||
|
||||
## Update
|
||||
|
||||
Keep your script up to date with the latest features by running:
|
||||
|
||||
### On Windows:
|
||||
|
||||
```powershell
|
||||
python update.py
|
||||
```
|
||||
|
||||
### On Linux/MacOS:
|
||||
|
||||
```bash
|
||||
python3 update.py
|
||||
```
|
||||
|
||||
<br>
|
||||
|
||||
|
||||
## 📂 Release files
|
||||
|
||||
| **File** | **Description** |
|
||||
|------------------------------|----------------------------------------------------------------------------|
|
||||
| `StreamingCommunity.exe` | Windows (Win10+) standalone executable (recommended for Windows). |
|
||||
| `StreamingCommunity-main.zip`| Source code and resources |
|
||||
|
||||
## Configuration ⚙️
|
||||
# Configuration
|
||||
|
||||
You can change some behaviors by tweaking the configuration file.
|
||||
|
||||
The configuration file is divided into several main sections:
|
||||
|
||||
### DEFAULT Settings
|
||||
## DEFAULT Settings
|
||||
|
||||
```json
|
||||
{
|
||||
@ -179,7 +177,7 @@ The configuration file is divided into several main sections:
|
||||
|
||||
- `root_path`: Directory where all videos will be saved
|
||||
|
||||
#### Path examples:
|
||||
### Path examples:
|
||||
* Windows: `C:\\MyLibrary\\Folder` or `\\\\MyServer\\MyLibrary` (if you want to use a network folder)
|
||||
* Linux/MacOS: `Desktop/MyLibrary/Folder`
|
||||
`<br/><br/>`
|
||||
@ -189,7 +187,7 @@ The configuration file is divided into several main sections:
|
||||
|
||||
- `map_episode_name`: Template for TV series episode filenames
|
||||
|
||||
#### Episode name usage:
|
||||
### Episode name usage:
|
||||
|
||||
You can choose different vars:
|
||||
|
||||
@ -203,22 +201,24 @@ The configuration file is divided into several main sections:
|
||||
- `not_close`: If true, continues running after downloading
|
||||
- `show_trending`: Display trending content on startup
|
||||
|
||||
#### qBittorrent Configuration
|
||||
### qBittorrent Configuration
|
||||
|
||||
```json
|
||||
{
|
||||
"config_qbit_tor": {
|
||||
"host": "192.168.1.59",
|
||||
"port": "8080",
|
||||
"user": "admin",
|
||||
"pass": "adminadmin"
|
||||
```json
|
||||
{
|
||||
"config_qbit_tor": {
|
||||
"host": "192.168.1.59",
|
||||
"port": "8080",
|
||||
"user": "admin",
|
||||
"pass": "adminadmin"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
```
|
||||
|
||||
To enable qBittorrent integration, follow the setup guide [here](https://github.com/lgallard/qBittorrent-Controller/wiki/How-to-enable-the-qBittorrent-Web-UI).
|
||||
To enable qBittorrent integration, follow the setup guide [here](https://github.com/lgallard/qBittorrent-Controller/wiki/How-to-enable-the-qBittorrent-Web-UI).
|
||||
|
||||
### REQUESTS Settings
|
||||
<br>
|
||||
|
||||
## REQUESTS Settings
|
||||
|
||||
```json
|
||||
{
|
||||
@ -230,7 +230,9 @@ To enable qBittorrent integration, follow the setup guide [here](https://github.
|
||||
- `timeout`: Maximum timeout (in seconds) for each request
|
||||
- `max_retry`: Number of retry attempts per segment during M3U8 index download
|
||||
|
||||
### BROWSER Settings
|
||||
<br>
|
||||
|
||||
## BROWSER Settings
|
||||
|
||||
```json
|
||||
{
|
||||
@ -240,7 +242,9 @@ To enable qBittorrent integration, follow the setup guide [here](https://github.
|
||||
|
||||
- `headless`: Controls whether to run browser in headless mode
|
||||
|
||||
### M3U8_DOWNLOAD Settings
|
||||
<br>
|
||||
|
||||
## M3U8_DOWNLOAD Settings
|
||||
|
||||
```json
|
||||
{
|
||||
@ -258,7 +262,10 @@ To enable qBittorrent integration, follow the setup guide [here](https://github.
|
||||
- `default_audio_workser`: Number of threads for audio download
|
||||
- `cleanup_tmp_folder`: Remove temporary .ts files after download
|
||||
|
||||
#### Language Settings
|
||||
|
||||
<br>
|
||||
|
||||
### Language Settings
|
||||
|
||||
The following codes can be used for `specific_list_audio` and `specific_list_subtitles`:
|
||||
|
||||
@ -293,7 +300,7 @@ forced-ita hin - Hindi pol - Polish tur - Turkish
|
||||
> "specific_list_subtitles": ["ita", "eng", "spa"]
|
||||
> ```
|
||||
|
||||
### M3U8_PARSER Settings
|
||||
## M3U8_PARSER Settings
|
||||
|
||||
```json
|
||||
{
|
||||
@ -305,7 +312,9 @@ forced-ita hin - Hindi pol - Polish tur - Turkish
|
||||
- `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 🐳
|
||||
<br>
|
||||
|
||||
# Docker
|
||||
|
||||
You can run the script in a docker container, to build the image just run
|
||||
|
||||
@ -338,7 +347,7 @@ 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
|
||||
# Website Status
|
||||
|
||||
| Website | Status |
|
||||
|:-------------------|:------:|
|
||||
@ -353,18 +362,18 @@ The `run-container` command mounts also the `config.json` file, so any change to
|
||||
| PirateBays | ✅ |
|
||||
| StreamingCommunity | ✅ |
|
||||
|
||||
## 📖 Tutorials
|
||||
# Tutorials
|
||||
|
||||
- [Windows Tutorial](https://www.youtube.com/watch?v=mZGqK4wdN-k)
|
||||
- [Linux Tutorial](https://www.youtube.com/watch?v=0qUNXPE_mTg)
|
||||
- [Pypy Tutorial](https://www.youtube.com/watch?v=C6m9ZKOK0p4)
|
||||
- [Compiled .exe Tutorial](https://www.youtube.com/watch?v=pm4lqsxkTVo)
|
||||
|
||||
## 📝 To Do
|
||||
# To Do
|
||||
|
||||
- Create website API
|
||||
|
||||
## 🤝 Contributing
|
||||
# Contributing
|
||||
|
||||
Contributions are welcome! Steps:
|
||||
1. Fork the repository
|
||||
@ -374,5 +383,6 @@ Contributions are welcome! Steps:
|
||||
5. Open Pull Request
|
||||
|
||||
|
||||
## 🛡️ Disclaimer
|
||||
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.
|
||||
# Disclaimer
|
||||
|
||||
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.
|
||||
|
@ -1,5 +1,5 @@
|
||||
__title__ = 'StreamingCommunity'
|
||||
__version__ = 'v1.8.0'
|
||||
__version__ = 'v1.9.0'
|
||||
__author__ = 'Lovi-0'
|
||||
__description__ = 'A command-line program to download film'
|
||||
__copyright__ = 'Copyright 2024'
|
||||
|
@ -142,7 +142,7 @@ def main():
|
||||
|
||||
# Create logger
|
||||
log_not = Logger()
|
||||
#initialize()
|
||||
initialize()
|
||||
|
||||
# Load search functions
|
||||
search_functions = load_search_functions()
|
||||
@ -185,7 +185,7 @@ def main():
|
||||
|
||||
# Display the category legend in a single line
|
||||
legend_text = " | ".join([f"[{color}]{category.capitalize()}[/{color}]" for category, color in color_map.items()])
|
||||
console.print(f"[bold green]Category Legend:[/bold green] {legend_text}")
|
||||
console.print(f"\n[bold green]Category Legend:[/bold green] {legend_text}")
|
||||
|
||||
# Construct the prompt message with color-coded site names
|
||||
prompt_message = "[green]Insert category [white](" + ", ".join(
|
||||
|
@ -8,7 +8,7 @@ unidecode
|
||||
jsbeautifier
|
||||
pathvalidate
|
||||
pycryptodome
|
||||
fake-useragent=1.1.3
|
||||
fake-useragent==1.1.3
|
||||
qbittorrent-api
|
||||
python-qbittorrent
|
||||
googlesearch-python
|
@ -194,7 +194,7 @@ else
|
||||
esac
|
||||
fi
|
||||
|
||||
sed -i.bak '1s|.*|#!.venv/bin/python3|' run.py
|
||||
sudo chmod +x run.py
|
||||
sed -i.bak '1s|.*|#!.venv/bin/python3|' test_run.py
|
||||
sudo chmod +x test_run.py
|
||||
echo 'Everything is installed!'
|
||||
echo 'Run StreamingCommunity with "./run.py"'
|
||||
echo 'Run StreamingCommunity with "./test_run.py"'
|
||||
|
@ -123,8 +123,8 @@ pip install -r requirements.txt || (
|
||||
)
|
||||
|
||||
:: Run run.py
|
||||
echo Running run.py...
|
||||
call .venv\Scripts\python .\run.py || (
|
||||
echo Running test_run.py...
|
||||
call .venv\Scripts\python .\test_run.py || (
|
||||
echo Error during run.py execution.
|
||||
exit /b 1
|
||||
)
|
||||
|
Loading…
x
Reference in New Issue
Block a user