makerelease è un comodo script per velocizzare la pubblicazione di film e serie tv sui forum P2P italiani.
⚠️ ATTENZIONE: Questo repository è pubblicato a scopo informativo e didattico.
- Ottiene i dati di film e serie tv da TheMovieDB
- Crea il report con MediaInfo o AVInaptic
- Crea il file .torrent e genera il link magnet
- Estrae gli screenshot
- Genera il grafico del bitrate
- Carica tutte le immagini su Imgur, ImgBB o Imgbly
- Prepara il testo del post da pubblicare sul forum con template completamente personalizzabili
- Formatta il titolo della release seguendo un formato consigliato
Sono supportati diversi tipi di release:
- Film
- Film: seleziona un singolo file
mkv
,mp4
oavi
- Film + Extra: seleziona una directory contenente un file video e un numero arbitrario di cartelle
Extra
,Featurettes
, ecc. La procedura è identica al caso precedente, l'unica differenza è l'aggiunta della directory nel torrent.
- Film: seleziona un singolo file
- Serie TV
- Stagione singola: seleziona una directory contenente più file video. Lo script identifica la serie dal nome della cartella.
- Serie completa: seleziona una directory contenente più cartelle. Lo script identifica la serie dal nome della cartella principale.
-
Installa Python
winget install Python.Python.3.12
-
Installa Git
winget install Git.Git
-
Installa FFmpeg
winget install Gyan.FFmpeg
-
Clona il repository
git clone https://github.com/c137ricksanchez/makerelease.git
-
Entra nella directory
cd makerelease
-
Installa il pacchetto e le dipendenze
⚠️ Installa le dipendenze all'interno di un ambiente virtuale (venv) per evitare conflitti con altri script.pip install -e .
-
Installa Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
-
Installa Python
brew install python
-
Installa Git
brew install git
-
Installa FFmpeg
brew install ffmpeg
-
Clona il repository
git clone https://github.com/c137ricksanchez/makerelease.git
-
Entra nella directory
cd makerelease
-
Installa il pacchetto e le dipendenze
⚠️ Installa le dipendenze all'interno di un ambiente virtuale (venv) per evitare conflitti con altri script.pip install -e .
-
Installa Git, FFmpeg e MediaInfo
-
Clona il repository
git clone https://github.com/c137ricksanchez/makerelease.git
-
Entra nella directory
cd makerelease
-
Installa il pacchetto e le dipendenze
⚠️ Installa le dipendenze all'interno di un ambiente virtuale (venv) per evitare conflitti con altri script.pip install -e .
-
Aggiorna il repository
git pull
-
Aggiorna eventuali dipendenze
pip install -e .
Crea una copia della cartella config_example
chiamandola config
e modifica i file all'interno per configurare lo script.
imgbb
: Se desideri caricare le immagini su ImgBB, ottieni la chiave API e inseriscila qui. Lascia vuoto per utilizzare Imgur!tmdb
: Inserisci la chiave delle API di TheMovieDB (se non ne hai una, registrati e ottienila qui)imgbly
: Il caricamento su ImgBly è disattivato di default, attivandolo verrà utilizzato come scelta primaria. ImgBly verrà sempre utilizzato in caso di fallimento nel caricamento delle immagini su Imgur o su ImgBB, o in caso di screenshot troppo grandi (Imgur supporta al max. 20 MB mentre ImgBB 32 MB)
Inserisci i timestamp dove lo script andrà ad estrarre gli screenshot (nel formato HH:MM:SS
).
Modifica il template del post in base alle tue preferenze. Le variabili verranno sostituite in automatico con i dati del film o della serie tv.
{{ TITLE }}
- Titolo{{ ORIGINAL_TITLE }}
- Titolo originale{{ YEAR }}
- Anno di uscita{{ RUNTIME }}
- Durata{{ PLOT }}
- Trama{{ GENRE }}
- Genere{{ DIRECTOR }}
- Regista- Il
CAST
è una lista di persone, ciascuna con due attributi:actor
, cioè il nome dell'attore, echaracter
, cioè il nome del suo personaggio, e va mostrato con una formula di questo tipo che consente flessibilità nel come si vuole la lista di output:[list] {% for person in CAST %} [*] {{ person.actor }}: {{ person.character }} {% endfor %} [/list]
{{ COUNTRY }}
- Paese di produzione{{ POSTER_URL }}
- URL del poster{{ TMDB_URL }}
- URL della pagina TheMovieDB{{ TRAILER }}
- URL al trailer su YouTube{{ SCREENSHOTS }}
- URL degli screenshot{{ BITRATE_GRAPH }}
- URL del grafico del bitrate (se non presente, la generazione del grafico verrà saltata){{ REPORT_MEDIAINFO }}
- Report generato con MediaInfo{{ REPORT_AVINAPTIC }}
- Report generato con AVInaptic{{ SIZE }}
- Dimensione del torrent{{ MAGNET }}
- Link magnet{{ TREE }}
- Elenco dei file, di default è incluso in una formula che lo stampa solo se la release è di tipomovie_folder
,tv_single
oppuretv_multi
{% if TREE is defined %} [b][size=150]CONTENUTO[/size][/b] [code] {{ TREE }} [/code] {% endif %}
{{ EP_COUNT }}
- Numero degli episodi, di default è incluso in una formula che lo stampa solo se la release è di tipotv_single
oppuretv_multi
{% if EP_COUNT is defined %} Numero episodi: [b]{{ EP_COUNT }}[/b] {% endif %}
Puoi creare molteplici file template, sarà sufficiente differenziarli utilizzando il carattere underscore (_
). Esempio: template_a.jinja
oppure template_b.jinja
. Il risultato sarà un file post.txt
differente per ciascun template, nominato come il file template, quindi post_a.txt
oppure post_b.txt
.
Inserisci la trackers list da usare durante la creazione del torrent.
Apri il terminale ed esegui:
python gui.py
Apri il terminale ed esegui il comando utilizzando i flag riportati sotto per scegliere le opzioni:
python makerelease.py [PATH] -t [TYPE]
Long | Short | Default | Descrizione |
---|---|---|---|
--type |
-t |
movie |
Tipo di release, a scelta tra: movie , movie_folder , tv_single , tv_multi |
--id |
-i |
ID del titolo su TheMovieDB (facoltativo - se non passato, verrà fatta una ricerca e chiesto quale risultato utilizzare) | |
--crew |
-c |
Nome della crew da inserire alla fine del nome del file (facoltativo) | |
--rename |
-r |
False |
Rinomina in automatico il file seguendo il formato consigliato |
--help |
-h |
Mostra il messaggio di aiuto con le informazioni su come usare il comando |