Savify adalah perpustakaan python yang mengunduh lagu dari penyedia yang dipilih (secara default YouTube), dan kemudian mengambil informasi meta dari Spotify. Jika ada pertanyaan, Savify akan menemukan dan mengunduh lagu ke format mp3 dengan kualitas setinggi 320 kb/s ! Aplikasi ini juga akan mengikis dan menulis tag id3v2 ke semua lagu Anda. Tag mencakup judul, artis, tahun, album, dan bahkan sampul!
Savify mendukung semua tautan lagu, album, dan daftar putar Spotify. Selain itu, ada fungsi pencarian terintegrasi sehingga meskipun Anda tidak memiliki tautan Spotify, Anda cukup memasukkan nama lagu dan Savify akan mengunduhnya!
Selain mp3, Savify juga dapat mengunduh dan mengonversi ke jenis file lain. Di dalam aplikasi ini, Anda dapat menentukan format dan kualitas lagu yang ingin Anda unduh untuk kompatibilitas maksimal di semua perangkat Anda. Format yang tersedia: mp3, aac, flac, m4a, opus, vorbis, dan wav. Tag dan cover art hanya akan diterapkan pada lagu yang diunduh dalam format mp3.
Harap dicatat bahwa perpustakaan ini tidak bertentangan dengan TOS Spotify dengan cara apa pun, lagu tidak diambil langsung dari Spotify, melainkan diunduh dari sumber lain seperti YouTube dan Soundcloud menggunakan perpustakaan python youtube-dl. Spotify hanya digunakan untuk mengumpulkan informasi meta yang akurat untuk dimasukkan ke dalam file lagu yang diunduh.
Kunjungi repositori image Docker Hub resmi kami dan dapatkan image Docker terbaru: https://hub.docker.com/repository/docker/laurencerawlings/savify
Jika ada pertanyaan atau masukan, bergabunglah dengan Server Discord
Savify mengandalkan perpustakaan FFmpeg sumber terbuka untuk mengonversi dan menulis metadata ke lagu yang diunduh. Harap pastikan FFmpeg diinstal di komputer Anda dan ditambahkan ke System PATH. Ikuti tutorialnya di sini.
Jika Anda ingin menggunakan Savify untuk mengunduh daftar putar Spotify pribadi, pastikan visibilitasnya disetel ke 'Publik'. Ini agar Savify dapat menggunakan Spotify API untuk mengambil detail lagu dari playlist Anda.
Jika Anda menggunakan Windows, Anda dapat mengunduh paket executable terbaru yang telah dikemas sebelumnya (yang saya rekomendasikan karena Anda tidak perlu menyediakan kunci API Savify), atau Anda dapat mengunduh pustaka python dan menjalankan modul secara langsung menggunakan CLI.
Buka di sini untuk mengunduh Savify.exe terbaru, lalu pastikan Anda memiliki:
FFmpeg diunduh dan ditambahkan ke Path Anda
Kredensial Spotify API ditambahkan ke variabel lingkungan Anda
Itu saja, kamu sebaiknya berangkat! Lihat beberapa contoh penggunaan di bawah ini.
$ pip install -U savify
Kloning repositori dan pastikan Anda berada di direktori root. Jalankan perintah build berikut:
$ docker build -t savify:dev .
Saat ini Savify hanya mendukung URL Spotify dan permintaan pencarian, namun dukungan untuk URI Spotify akan ditambahkan di masa mendatang.
Jika Anda telah mengunduh Savify.exe terbaru dari halaman rilis, buka terminal Anda dan arahkan ke direktori yang sama dengan biner, lalu Anda dapat menjalankan:
$ Savify.exe
Jika Anda menggunakan paket Python dan savify diinstal ke paket situs Anda dan folder pip Anda ada di PATH Anda (yang seharusnya ada secara default), dari mana saja Anda cukup menjalankan:
$ savify
Untuk bantuan, jalankan:
$ savify --help
Menggunakan default di atas:
$ savify "https://open.spotify.com/track/4Dju9g4NCz0LDxwcjonSvI"
Menentukan pilihan Anda sendiri:
$ savify "https://open.spotify.com/track/4Dju9g4NCz0LDxwcjonSvI" -q best -f mp3 -o "/path/to/downloads" -g "%artist%/%album%"
Dengan permintaan pencarian:
$ savify "You & I - Bru-C" -t track -q best -f mp3 -o "/path/to/downloads" -g "%artist%/%album%"
Variabel yang tersedia: %artist%, %album%, %playlist%
Misalnya:
$ savify "You & I - Bru-C" -o /path/to/downloads -g "%artist%/%album%"
Akan mengunduh dalam struktur direktori berikut:
/path/ke/download | |- /Bru-C | |- /Suara Asli | |- Bru-C - Kamu & Aku.mp3
Jenis Kueri: | melacak |
---|---|
Kualitas: | terbaik |
Format: | mp3 |
Jalur: | Windows: HOME/AppData/Roaming/Savify/unduhan Linux: HOME/.local/share/Savify/downloads MacOS: BERANDA/Perpustakaan/Dukungan Aplikasi/Savify/unduhan |
Pengelompokan: | tidak ada pengelompokan |
Untuk contoh penggunaan lebih lanjut, baca dokumen.
Jalankan savify di dalam container yang juga dapat dilampirkan ke jaringan container lain. Ini berguna jika Anda ingin menjalankan beberapa contoh savify dan/atau ingin menggunakan VPN untuk mengunduh. Anda dapat menggunakan image Docker yang dibuat sendiri atau yang resmi. Pastikan untuk menggunakan nama dan tag image Docker yang benar.
$ docker run laurencerawlings/savify:latest
Jika tidak ada argumen yang ditentukan, kontainer akan mencetak halaman bantuan. Cukup tambahkan argumen Anda, pastikan Anda memasang folder dari host Anda sehingga unduhan tetap ada ( -v
) - pwd
digunakan untuk memasang direktori tempat Anda berada saat ini - dan menghapus wadah setelah selesai ( --rm
). Anda harus menentukan ID klien dan rahasia Spotify Anda dengan menggunakan variabel lingkungan ( -e
):
$ buruh pelabuhan menjalankan --rm -v "`pwd`:/root/.local/share/Savify/downloads" -e SPOTIPY_CLIENT_ID=id_klien -e SPOTIPY_CLIENT_SECRET=rahasia_klien laurencerawlings/savify:latest "https://open.spotify.com/playlist/..."
Jika Anda ingin menyimpan log Anda, Anda dapat memasang direktori logging hanya dengan menambahkan argumen berikut ke perintah docker run: -v "./logs:/root/.local/share/Savify/logs"
Otomatiskan dengan skrip shell:
$ nano savify.sh
#!/bin/bashdocker run --rm -v "`pwd`:/root/.local/share/Savify/downloads" -e SPOTIPY_CLIENT_ID=id_klien -e SPOTIPY_CLIENT_SECRET=rahasia_klien laurencerawlings/savify:terbaru $1
Kemudian jalankan dengan:
$ sh savify.sh "https://open.spotify.com/track/4Dju9g4NCz0LDxwcjonSvI"
Anda juga memiliki opsi untuk memulai dengan cepat menggunakan skrip buruh pelabuhan kami yang memiliki VPN terintegrasi, periksa untuk melihat apakah ada wadah VPN yang dapat dihubungkan dengan skrip tersebut. Skrip ini sempurna untuk dijadwalkan dengan cron:
$ wget https://github.com/laurencerawlings/savify/latest/download/savify-docker-scripts.zip $ unzip savify-docker-scripts.zip && rm savify-docker-scripts.zip $ cd savify-docker-scripts/
Anda kemudian harus mengedit file konfigurasi dengan editor teks pilihan Anda (kami lebih suka nano), menyimpannya (Ctrl + X, Y untuk menyimpan perubahan di nano) dan mengganti namanya menjadi config.sh
.
$ nano template.config.sh $ mv templat.config.sh config.sh
Anda kemudian dapat menjalankan skrip:
$ bash unduhan massal.sh
Untuk menggunakan modul Savify Python, Anda memerlukan aplikasi pengembang Spotify Anda sendiri untuk mengakses API mereka. Untuk melakukan ini, daftar di sini. Ketika Anda telah membuat aplikasi baru, catatlah ID klien dan rahasia Anda. Anda dapat meneruskan id dan rahasia ke Savify dengan dua cara:
Sekarang Anda perlu menambahkan 2 variabel lingkungan ke sistem Anda:
SPOTIPY_CLIENT_ID
SPOTIPY_CLIENT_SECRET
Untuk mengetahui cara melakukan ini, temukan tutorial online untuk sistem operasi spesifik Anda. Setelah Anda melakukan ini, pastikan untuk me-restart shell Anda.
Anda dapat meneruskan id dan rahasia Anda menggunakan Tuple saat membuat objek Savify Anda:
s = Simpan(api_credentials=("CLIENT_ID","CLIENT_SECRET"))
Instal paket ke lingkungan Anda:
$ pip install savify
Impor dan gunakan Savify:
dari savify import Savifyfrom savify.types import Jenis, Format, Kualitas = Savify()# Spotify URLs.download("SPOTIFY URL")# Kueri Penelusuran# Jenis: TRACK, ALBUM, PLAYLISTs.download("QUERY", query_type=Type. MELACAK)
Simpan argumen konstruktor opsional (lihat di atas untuk mengetahui defaultnya):
impor pencatatan dari savify impor Savify dari savify.types impor Jenis, Format, Kualitas dari savify.utils impor PathHolder # Pilihan Kualitas: TERBURUK, Q32K, Q96K, Q128K, Q192K, Q256K, Q320K, TERBAIK # Opsi Format: MP3, AAC, FLAC, M4A, OPUS, VORBIS, WAV Savify(api_credentials=Tidak ada, kualitas=Kualitas.TERBAIK, download_format=Format.MP3, path_holder=PathHolder(downloads_path='path/for/downloads'), group='%artist%/%album%', Quiet=False, skip_cover_art =Salah, log_level=logging.INFO)
Menyesuaikan opsi youtube-dl secara manual:
dari savify import Savifyoptions = {'cookiefile': 'cookies.txt'}Savify(ydl_options=options)
Melewati logger Anda sendiri:
dari savify import Savifyfrom savify.logger import Loggerlogger = Logger(log_location='path/for/logs', log_level=None) # Output senyapSavify(logger=logger)
Argumen grup digunakan untuk mengurutkan lagu yang Anda unduh di dalam jalur keluaran. Variabel yang mungkin untuk string jalur adalah: %artis%, %album%, dan %daftar putar%. Variabelnya diganti dengan metadata lagu. Misalnya, lagu yang diunduh dengan objek Savify di atas akan disimpan ke jalur seperti ini: path/for/downloads/Contoh Artis/Contoh Album/Contoh Lagu.mp3
Jika Anda ingin mencoba menambahkan ke Savify, gunakan instruksi di sini. Dari sana Anda dapat membuat tambahan apa pun yang menurut Anda akan membuat Savify lebih baik.
Jika Anda mengembangkan Savify, instal paket pip secara lokal sehingga Anda dapat membuat dan menguji perubahan Anda. Dari direktori root jalankan:
$ pip install -e .
Anda kemudian dapat menjalankan modul Python:
$ savify
Paket ini dibuat dengan Cookiecutter dan templat proyek audreyr/cookiecutter-pypackage.