Suka aplikasi ini? Terima kasih telah memberikannya ⭐️
Decluttarr
Daftar isi
- Ringkasan
- Ketergantungan & Petunjuk & FAQ
- Memulai
- Penjelasan pengaturan
- Kredit
- Penafian
Ringkasan
Decluttarr menjaga antrian radarr & sonarr & lidarr & readarr & whisparr bebas dari unduhan yang terhenti / berlebihan
Ikhtisar fitur:
- Hapus unduhan secara otomatis yang terhenti saat mengunduh metadata (& memicu unduhan dari sumber lain)
- Hapus unduhan yang gagal secara otomatis (& picu unduhan dari sumber lain)
- Hapus unduhan milik radarr/sonarr/etc secara otomatis. item yang telah dihapus sementara itu ('Unduhan yatim piatu')
- Secara otomatis menghapus unduhan yang terhenti, setelah unduhan tersebut diketahui terhenti beberapa kali berturut-turut (& memicu unduhan dari sumber lain)
- Secara otomatis menghapus unduhan yang lambat, setelah unduhan tersebut ditemukan lambat beberapa kali berturut-turut (& memicu unduhan dari sumber lain)
- Hapus unduhan milik radarr/sonarr/etc secara otomatis. barang-barang yang tidak diawasi
- Secara otomatis menghapus unduhan yang gagal diimpor karena bukan merupakan peningkatan format (yaitu versi yang lebih baik sudah ada)
Anda dapat menjalankannya secara lokal dengan meluncurkan main.py, atau dengan menarik image buruh pelabuhan. Anda dapat menemukan contoh docker-compose.yml di folder docker.
Ketergantungan & Petunjuk & FAQ
- Gunakan Sonarr v4 & Radarr v5 (saat ini tag 'nightly' bukan 'terbaru'), jika tidak, fitur tertentu mungkin tidak berfungsi dengan benar
- qBittorrent direkomendasikan tetapi tidak wajib. Jika Anda tidak menggunakan qBittorrent, Anda akan mengalami batasan berikut:
- Saat mendeteksi unduhan yang lambat, kecepatan yang disediakan oleh aplikasi *arr akan digunakan, yang kurang akurat dibandingkan kecepatan yang dikembalikan qBittorrent saat ditanyai secara langsung
- Fitur yang memungkinkan untuk melindungi unduhan dari penghapusan (NO_STALLED_REMOVAL_QBIT_TAG) tidak berfungsi
- Fitur yang mengabaikan pelacak pribadi tidak berfungsi
- Jika Anda melihat kesalahan aneh seperti "ditemukan 10/3 kali", pertimbangkan untuk mengaktifkan pengaturan "Tolak Hash Torrent yang Diblokir Saat Meraih". Pada Nightly Radarr/Sonarr/Readarr/Lidarr/Whisparr, opsinya terletak di bawah pengaturan/pengindeks di opsi lanjutan setiap pengindeks, di Prowlarr ada di bawah pengaturan/aplikasi dan kemudian pengaturan lanjutan dari masing-masing aplikasi
- Ketika torrent yang rusak dihapus, file-file miliknya akan dihapus
- Di semua jenis penghapusan: Unduhan baru dari sumber lain secara otomatis ditambahkan oleh radarr/sonarr/lidarr/readarr/whisparr (jika tersedia)
- Jika Anda menggunakan qBittorrent dan tidak ada torrent Anda yang dihapus dan log verbose menunjukkan bahwa semua torrent dilindungi oleh NO_STALLED_REMOVAL_QBIT_TAG meskipun tidak, Anda mungkin menggunakan versi qBittorrent yang memiliki masalah dengan panggilan API dan Anda mungkin ingin mempertimbangkan untuk beralih ke gambar qBit yang berbeda (lihat #56)
- Saat ini, aplikasi “*Arr” hanya didukung dalam bahasa Inggris. Lihat edisi #132 untuk lebih jelasnya
- Jika Anda mengalami masalah yaml, silakan periksa masalah yang sudah ditutup. Ada notasi yang berbeda, dan mungkin saja masalah yang Anda temukan sudah terpecahkan di salah satu masalah. Setelah Anda mengetahui masalah Anda, silakan kirimkan yaml Anda untuk membantu orang lain di sini: #173
- declutarr hanya mendukung satu instance radarr/sonarr. Jika Anda memiliki beberapa contoh *arrs tersebut, solusinya adalah dengan menjalankan beberapa decluclutarrs juga
Memulai
Ada dua cara untuk menjalankan ini:
- Sebagai wadah buruh pelabuhan dengan komposisi buruh pelabuhan
- Dengan mengkloning repositori dan menjalankan skrip secara manual
Kedua cara tersebut dijelaskan di bawah dan terdapat penjelasan untuk pengaturan berbeda di bawahnya
Metode 1: buruh pelabuhan
- Buat file
docker-compose.yml
- Gunakan yang berikut ini sebagai dasar untuk itu dan sesuaikan pengaturan sesuai kebutuhan Anda
version: "3.3"
services:
decluttarr:
image: ghcr.io/manimatter/decluttarr:latest
container_name: decluttarr
restart: always
environment:
TZ=Europe/Zurich
PUID=1000
PGID=1000
## General
# TEST_RUN=True
# SSL_VERIFICATION=False
LOG_LEVEL: INFO
## Features
REMOVE_TIMER: 10
REMOVE_FAILED: True
REMOVE_FAILED_IMPORTS: True
REMOVE_METADATA_MISSING: True
REMOVE_MISSING_FILES: True
REMOVE_ORPHANS: True
REMOVE_SLOW: True
REMOVE_STALLED: True
REMOVE_UNMONITORED: True
RUN_PERIODIC_RESCANS: '
{
"SONARR": {"MISSING": true, "CUTOFF_UNMET": true, "MAX_CONCURRENT_SCANS": 3, "MIN_DAYS_BEFORE_RESCAN": 7},
"RADARR": {"MISSING": true, "CUTOFF_UNMET": true, "MAX_CONCURRENT_SCANS": 3, "MIN_DAYS_BEFORE_RESCAN": 7}
}'
# Feature Settings
PERMITTED_ATTEMPTS: 3
NO_STALLED_REMOVAL_QBIT_TAG: Don't Kill
REMOVE_SLOW: True
MIN_DOWNLOAD_SPEED: 100
FAILED_IMPORT_MESSAGE_PATTERNS: '
[
"Not a Custom Format upgrade for existing",
"Not an upgrade for existing"
]'
## Radarr
RADARR_URL: http://radarr:7878
RADARR_KEY: $RADARR_API_KEY
## Sonarr
SONARR_URL: http://sonarr:8989
SONARR_KEY: $SONARR_API_KEY
## Lidarr
LIDARR_URL=http://lidarr:8686
LIDARR_KEY=$LIDARR_API_KEY
## Readarr
READARR_URL=http://readarr:8787
READARR_KEY=$READARR_API_KEY
## Whisparr
WHISPARR_URL=http://whisparr:6969
WHISPARR_KEY=$WHISPARR_API_KEY
## qBitorrent
QBITTORRENT_URL: http://qbittorrent:8080
# QBITTORRENT_USERNAME=Your name
# QBITTORRENT_PASSWORD=Your password
- Jalankan
docker-compose up -d
di direktori tempat file berada untuk membuat container docker Catatan: Selalu tarik versi " terbaru ". Versi "dev" hanya untuk pengujian, dan hanya boleh ditarik ketika menyumbangkan kode atau mendukung perbaikan bug
Metode 2: Menjalankan secara manual
- Kloning repositori dengan
git clone -b main https://github.com/ManiMatter/decluttarr.git
- Ganti nama
config.conf-Example
di dalam folder config menjadi config.conf
- Sesuaikan
config.conf
dengan kebutuhan Anda - Instal perpustakaan yang terdaftar di docker/requirements.txt (pip install -r requiremen.txt)
- Jalankan skrip dengan
python3 main.py
Catatan: config.conf
diabaikan saat dijalankan melalui docker-compose.yml
Penjelasan pengaturan
Pengaturan umum
Mengonfigurasi perilaku umum aplikasi (di semua fitur)
LOG_LEVEL
- Menetapkan tingkat di mana pencatatan akan dilakukan
-
INFO
hanya akan menampilkan perubahan yang diterapkan pada radarr/sonarr/lidarr/readarr/whisparr -
VERBOSE
menunjukkan setiap pemeriksaan yang dilakukan meskipun tidak ada perubahan yang diterapkan -
DEBUG
menampilkan informasi yang sangat terperinci, hanya diperlukan untuk debugging - Jenis: Tali
- Nilai yang Diizinkan: KRITIS, KESALAHAN, PERINGATAN, INFO, VERBOSE, DEBUG
- Wajib: Tidak (Default pada INFO)
UJI_JALANKAN
- Memungkinkan Anda mencoba alat ini dengan aman. Jika aktif, unduhan tidak akan dihapus
- Jenis: Boolean
- Nilai yang Diizinkan: Benar, Salah
- Wajib: Tidak (Default ke False)
SSL_VERIFIKASI
- Mengaktifkan atau menonaktifkan verifikasi sertifikat SSL untuk semua panggilan API
-
True
berarti verifikasi sertifikat SSL aktif - Peringatan: Penting untuk diperhatikan bahwa menonaktifkan verifikasi SSL dapat menimbulkan implikasi keamanan, karena membuat sistem rentan terhadap serangan man-in-the-middle. Hal ini hanya boleh dilakukan dalam lingkungan yang terkendali dan aman dimana risikonya dipahami dan dimitigasi dengan baik
- Jenis: Boolean
- Nilai yang Diizinkan: Benar, Salah
- Wajib: Tidak (Default ke True)
Pengaturan fitur
Mengarahkan jenis pembersihan mana yang diterapkan pada antrean unduhan
HAPUS_TIMER
- Menetapkan frekuensi seberapa sering antrean diperiksa untuk unduhan yatim piatu dan terhenti
- Jenis: Bilangan Bulat
- Satuan: Menit
- Wajib: Tidak (Default ke 10)
HAPUS_GAGAL
- Mengarahkan apakah unduhan yang gagal tanpa koneksi akan dihapus dari antrean
- Unduhan ini tidak ditambahkan ke daftar blokir - Unduhan baru dari sumber lain secara otomatis ditambahkan oleh radarr/sonarr/lidarr/readarr/whisparr (jika tersedia)
- Jenis: Boolean
- Nilai yang Diizinkan: Benar, Salah
- Wajib: Tidak (Default ke False)
HAPUS_FAILED_IMPORTS
- Mengarahkan apakah unduhan yang gagal diimpor akan dihapus dari antrean
- Hal ini dapat terjadi, misalnya, ketika versi yang lebih baik telah tersedia
- Catatan: Hanya menganggap impor gagal jika pesan impor berisi peringatan yang tercantum di FAILED_IMPORT_MESSAGE_PATTERNS (lihat di bawah)
- Unduhan ini ditambahkan ke daftar blokir
- Jika pengaturan IGNORE_PRIVATE_TRACKERS benar, dan torrent yang terpengaruh adalah pelacak pribadi, item antrean akan dihapus, namun file torrent akan tetap disimpan
- Jenis: Boolean
- Nilai yang Diizinkan: Benar, Salah
- Wajib: Tidak (Default ke False)
HAPUS_METADATA_MISSING
- Mengarahkan apakah unduhan yang terhenti saat memperoleh metadata dihapus dari antrean
- Unduhan ini ditambahkan ke daftar blokir, sehingga tidak diminta ulang
- Unduhan baru dari sumber lain secara otomatis ditambahkan oleh radarr/sonarr/lidarr/readarr/whisparr (jika tersedia)
- Jenis: Boolean
- Nilai yang Diizinkan: Benar, Salah
- Wajib: Tidak (Default ke False)
HAPUS_MISSING_FILES
- Mengarahkan apakah unduhan yang memiliki peringatan "File Hilang" dihapus dari antrean
- Unduhan ini tidak ditambahkan ke daftar blokir
- Jenis: Boolean
- Nilai yang Diizinkan: Benar, Salah
- Wajib: Tidak (Default ke False)
HAPUS_ORPHANS
- Mengarahkan apakah unduhan yatim piatu dihapus dari antrean
- Unduhan yatim piatu adalah unduhan yang tidak lagi termasuk dalam media yang diminta (Karena media telah dihapus dari radarr/sonarr/lidarr/readarr/whisparr setelah pengunduhan dimulai)
- Unduhan ini tidak ditambahkan ke daftar blokir
- Jenis: Boolean
- Nilai yang Diizinkan: Benar, Salah
- Wajib: Tidak (Default ke False)
HAPUS_LAMBAT
- Mengarahkan apakah unduhan yang lambat akan dihapus dari antrean
- Unduhan lambat ditambahkan ke daftar blokir, sehingga tidak diminta ulang di masa mendatang
- Catatan: Tidak berlaku untuk unduhan usenet (karena pengguna membayar untuk kecepatan tertentu, kelambatan tidak akan terjadi)
- Jenis: Boolean
- Nilai yang Diizinkan: Benar, Salah
- Wajib: Tidak (Default ke False)
HAPUS_STALLED
- Mengarahkan apakah unduhan yang terhenti tanpa koneksi akan dihapus dari antrean
- Unduhan ini ditambahkan ke daftar blokir, sehingga tidak diminta ulang di masa mendatang
- Jenis: Boolean
- Nilai yang Diizinkan: Benar, Salah
- Wajib: Tidak (Default ke False)
HAPUS_UNMONITORED
- Mengarahkan apakah unduhan milik media yang tidak dipantau akan dihapus dari antrean
- Catatan: Hanya akan dihapus dari antrean jika semua acara TV yang bergantung pada unduhan yang sama tidak dipantau
- Unduhan ini tidak ditambahkan ke daftar blokir
- Catatan: Karena sonarr tidak mendukung paket multi-musim, jika Anda mengunduhnya, Anda harus melindunginya dengan
NO_STALLED_REMOVAL_QBIT_TAG
yang dijelaskan lebih jauh di bawah - Jenis: Boolean
- Nilai yang Diizinkan: Benar, Salah
- Wajib: Tidak (Default ke False)
RUN_PERIODIC_RESCANS
- Mengarahkan apakah pencarian dipicu secara otomatis untuk item yang hilang atau belum memenuhi batas
- Catatan: Saat ini hanya mendukung Radarr/Sonarr (Lidarr bergantung pada: Lidarr/Lidarr#5084 / Readarr Tergantung pada: Readarr/Readarr#3724)
- Jenis: Kamus
- Wajib: Tidak (Defaultnya adalah tidak ada pencarian yang terpicu secara otomatis)
- "SONARR"/"RADARR" mengaktifkan pencarian otomatis untuk masing-masing instance
- "MISSING"/"CUTOFF_UNMET" mengaktifkan pencarian otomatis untuk item yang diinginkan (defaultnya adalah True)
- "MAX_CONCURRENT_SCANS" menentukan jumlah maksimum item yang akan dicari dalam setiap pemindaian. Nilai ini menentukan berapa banyak item yang diproses per operasi pencarian, yang terjadi sesuai dengan interval yang ditetapkan oleh REMOVE_TIMER.
- Catatan: Batasnya adalah per daftar orang yang dicari. Jadi jika Radarr & Sonarr diatur untuk pencarian otomatis, baik untuk item yang hilang maupun item yang tidak terpenuhi, jumlah sebenarnya mungkin empat kali lipat dari MAX_CONCURRENT_SCANS
- "MIN_DAYS_BEFORE_RESCAN" mengarahkan hari-hari yang harus dilewati sebelum suatu item dipertimbangkan lagi untuk dipindai
- Catatan: RUN_PERIODIC_RESCANS akan selalu mencari item yang paling lama dicari
RUN_PERIODIC_RESCANS: '
{
"SONARR": {"MISSING": true, "CUTOFF_UNMET": true, "MAX_CONCURRENT_SCANS": 3, "MIN_DAYS_BEFORE_RESCAN": 7},
"RADARR": {"MISSING": true, "CUTOFF_UNMET": true, "MAX_CONCURRENT_SCANS": 3, "MIN_DAYS_BEFORE_RESCAN": 7}
}'
Ada notasi yaml yang berbeda, beberapa pengguna menyarankan notasi alternatif di bawah ini. Jika Anda menghadapi masalah, harap periksa terlebih dahulu masalah yang sudah ditutup sebelum membuka yang baru (misalnya, #173)
- RUN_PERIODIC_RESCANS=[
{
"SONARR":[{"MISSING":true, "CUTOFF_UNMET":true, "MAX_CONCURRENT_SCANS":3, "MIN_DAYS_BEFORE_RESCAN":7}],
"RADARR":[{"MISSING":true, "CUTOFF_UNMET":true, "MAX_CONCURRENT_SCANS":3, "MIN_DAYS_BEFORE_RESCAN":7}]
}
MIN_DOWNLOAD_SPEED
- Menetapkan kecepatan pengunduhan minimum untuk pengunduhan aktif
- Jika peningkatan ukuran file unduhan kurang dari nilai ini antara dua pemeriksaan berturut-turut, unduhan dianggap lambat dan akan dihapus jika terjadi lebih sering daripada upaya yang diizinkan
- Jenis: Bilangan Bulat
- Satuan: KByte per detik
- Wajib: Tidak (Defaultnya adalah 100, namun hanya diterapkan jika "REMOVE_SLOW" benar)
IZIN_ATTEMPTS
- Menentukan berapa kali pengunduhan harus dianggap sebagai metadata pengunduhan terhenti, lambat, atau macet sebelum dihapus
- Jenis: Bilangan Bulat
- Unit: Jumlah pemindaian
- Wajib: Tidak (Default ke 3)
NO_STALLED_REMOVAL_QBIT_TAG
- Unduhan di qBittorrent yang diberi tag ini tidak akan dihapus
- Fitur tidak tersedia jika tidak menggunakan qBittorrent sebagai pengelola torrent
- Berlaku untuk semua jenis penghapusan (yaitu tidak ada yang akan dihapus secara otomatis oleh decluttarr)
- Catatan: Anda mungkin ingin mencoba "memeriksa ulang paksa" agar torrent Anda yang macet dapat dicadangkan dan dijalankan secara manual
- Tag secara otomatis dibuat di qBittorrent (qBittorrent yang diperlukan dapat dijangkau di
QBITTORRENT_URL
) - Penting: Juga melindungi unduhan yang tidak dipantau agar tidak dihapus (relevan untuk paket multi-musim)
- Jenis: Tali
- Wajib: Tidak (Defaultnya adalah
Don't Kill
)
IGNORE_PRIVATE_TRACKERS
- Torrent pribadi di qBittorrent tidak akan dihapus dari antrean jika disetel ke true
- Hanya berfungsi jika qBittorrent digunakan (tidak berfungsi dengan transmisi dll.)
- Berlaku untuk semua jenis penghapusan (yaitu tidak ada yang akan dihapus secara otomatis oleh decluttarr); satu-satunya pengecualian untuk ini adalah REMOVE_NO_FORMAT_UPGRADE, di mana untuk pelacak pribadi item antrian dihapus (tetapi file torrent tetap disimpan)
- Catatan: Anda mungkin ingin mencoba "memeriksa ulang paksa" agar torrent Anda yang macet dapat dicadangkan dan dijalankan secara manual
- Jenis: Boolean
- Nilai yang Diizinkan: Benar, Salah
- Wajib: Tidak (Default ke True)
FAILED_IMPORT_MESSAGE_PATTERNS
- Bekerja sama dengan REMOVE_FAILED_IMPORTS (hanya relevan jika pengaturan ini benar)
- Menentukan pola yang menjadi dasar alat memutuskan apakah unduhan yang telah selesai dan memiliki peringatan impor dianggap gagal
- Item antrian dianggap gagal jika salah satu pola yang ditentukan terdapat dalam salah satu pesan item antrian
- Catatan: Jika dibiarkan kosong (atau tidak ditentukan), impor yang tertunda dengan peringatan tersebut dianggap gagal
- Jenis: Daftar
- Nilai yang disarankan: ["Bukan peningkatan Format Kustom untuk yang sudah ada", "Bukan peningkatan untuk yang sudah ada"]
- Wajib: Tidak (Defaultnya adalah [], yang berarti semua pesan gagal)
Bagian radar
Mendefinisikan contoh radarr di mana antrian unduhan harus dirapikan
RADARR_URL
- URL tempat instance dapat dijangkau
- Jika tidak ditentukan, instance ini tidak akan dipantau
RADARR_KEY
- Kunci API Anda untuk radarr
Bagian Sonarr
Mendefinisikan contoh sonarr di mana antrian unduhan harus dirapikan
SONARR_URL
- URL tempat instance dapat dijangkau
- Jika tidak ditentukan, instance ini tidak akan dipantau
SONARR_KEY
- Kunci API Anda untuk sonarr
Bagian Lidarr
Mendefinisikan contoh lidarr di mana antrian unduhan harus dirapikan
LIDARR_URL
- URL tempat instance dapat dijangkau
- Jika tidak ditentukan, instance ini tidak akan dipantau
LIDARR_KEY
- Kunci API Anda untuk lidarr
Bagian Baca
Mendefinisikan instance readarr di mana antrian unduhan harus dirapikan
READARR_URL
- URL tempat instance dapat dijangkau
- Jika tidak ditentukan, instance ini tidak akan dipantau
READARR_KEY
- Kunci API Anda untuk readarr
Bagian Whisparr
Mendefinisikan contoh whisparr di mana antrean unduhan harus dirapikan
WHISPARR_URL
- URL tempat instance dapat dijangkau
- Jika tidak ditentukan, instance ini tidak akan dipantau
WHISPARR_KEY
- Kunci API Anda untuk whisparr
qBagian Bittorrent
Mendefinisikan pengaturan untuk terhubung dengan qBittorrent Jika pengelola torrent yang berbeda digunakan, beri komentar pada bagian ini (lihat di atas batasan fungsionalitas yang timbul dari ini)
QBITTORRENT_URL
- URL tempat instance dapat dijangkau
- Jika tidak ditentukan, NO_STALLED_REMOVAL_QBIT_TAG tidak akan berpengaruh
QBITTORRENT_USERNAME
- Nama pengguna yang digunakan untuk masuk ke qBittorrent
- Opsional; tidak diperlukan jika otentikasi melewati qBittorrent diaktifkan (misalnya untuk koneksi lokal)
QBITTORRENT_PASSWORD
- Kata sandi yang digunakan untuk masuk ke qBittorrent
- Opsional; tidak diperlukan jika otentikasi melewati qBittorrent diaktifkan (misalnya untuk koneksi lokal)
Kredit
- Skrip untuk mendeteksi unduhan yang terhenti diperluas pada kode oleh MattDGTL/sonarr-radarr-queue-cleaner
- Skrip untuk membaca konfigurasi diperluas pada kode dengan syncarr/syncarr
- Tim & kontributor SONARR/RADARR atas produk hebat mereka, dokumentasi API, dan panduan di saluran Discord mereka
- Terima kasih khusus kepada mereka karena telah menambahkan tanda tambahan ke API mereka yang memungkinkan skrip ini mendeteksi unduhan yang macet dan menemukan metadata
- craggles17 untuk kompatibilitas lengan
- Fxsch untuk dokumentasi yang lebih baik / ReadMe
Penafian
Skrip ini bebas dari jaminan apa pun, dan Anda menggunakannya dengan risiko Anda sendiri