Spotify Command Line Interface
İçerik Tablosu
Proje Hakkında
Komut satırı arayüzünden basit komutlarla spotify kontrol etmenizi sağlayan bir komut satırı arayüzü.
Başlarken
Bağlanmaya çalıştığınız spotify üyeliğiniz premium değilse büyük ihtimalle API çalışmayacaktır. Bu yüzden öncelikle premium hesabınız olduğundan emin olun.
Bu program spotify'ı terminalden kontrol etmenizi sağlar, sadece bu programı kullanarak müzik dinleyemezsiniz. Eğer bir daemon arıyorsanız spotifyd'yi inceleyebilirsiniz. Komut satırından kullanabileceğiniz daha detaylı bir program arıyorsanız spotify tui'ye bakabilirsiniz.
Telefondan veya spotify daemon gibi programlar üzerinden müzik dinliyorsanız bazı özellikler doğru olarak çalışmayabilir. Bu tür durumlarda buradan bilgilendirirseniz dökümantasyona ekleyeceğim ve elimden geldiğince hataları çözmeye çalışacağım.
Gereksinimler
Bilgisayarınızda python olması gerekiyor. Komut satırına python --version
yazarak güncel python sürümünüzü öğrenebilirsiniz. Eğer python yüklemenize rağmen versiyonu göremiyorsanız path'e eklememiş olabilirsiniz. Bu proje python 3.9.5 ile yazıldı, daha eski sürümlerde çalışmayabilir.
Bazı gerekli kütüphaneleri indirmek için pip kullanacağız. Kuruluma geçmeden bilgisayarımızda pip var mı kontrol edeceğiz çünkü python 2.7.9+ ve python 3.4+ sürümlerinde python kurulumu ile beraber geliyor. Komut satırına pip --version
yazarak güncel sürümünüzü öğrenebilirsiniz. Eğer yüklü değilse pip dökümantasyonunu takip ederek kurulum yapabilirsiniz.
Spotify API kullanabilmek için aşağıdaki bilgilere ihtiyacımız olacak.
- Client Id
- Client Secret
- Redirect Uri
- Spotify Username
Bu bilgileri nasıl elde edeceğinizi aşağıda adım adım açıklayacağım.
Hesabımızla spotify developer'a giriş yapıyoruz. Karşımıza şöyle bir ekran çıkacak.
Üst menüden dashboard'a tıklıyoruz. Bu şekilde bir ekran çıkıyor, kendi hesabımızla giriş yapıyoruz.
Giriş yaptıktan sonra create an app yazısına tıklıyoruz.
Oluşturacağımız uygulamanın adını ve açıklamasını girip create'ye basıyoruz. Bu adımda istediğiniz ismi verebilirsiniz.
Sol taraftan show client secret'e tıklıyoruz ve ihtiyacımız olan client id ve client secret değerlerine buradan ulaştık.
Daha sonra sağ üstten edit settings'e tıklıyoruz. Buradan Redirect uri'yi ayarlayacağız. spotipy dökümantasyonuna göre herhangi bir uri kullanabiliriz. Ben http://localhost:8080
kullandım ancak siz bu uri'yi kullanmak zorunda değilsiniz. Değeri girdikten sonra add'e tıklıyoruz.
Dikkat! Eğer girdiğiniz uri bilgisayarınızda zaten kullanıyorsa program hata verecektir. Bu durumda farklı bir uri girmeniz gerekebilir.
Son olarak spotify'a giriş yapıyoruz. Buradan kullanıcı adımızı öğreniyoruz.
Bu linke göre spotify kullanıcı adı ve gösterilecek ad farklı şeyler. Eğer eski bir hesap kullanıyorsanız veya facebook'tan bağlanıyorsanız gösterilecek adınız ve kullanıcı adınız aynı olabilir ancak kontrol etmenizde fayda var.
Artık ihtiyacımız olan bütün bilgilere sahibiz. Kurulum aşamasında bu bilgileri kullanarak hesabımıza bağlanacağız.
Kurulum
- Github'dan projeyi klonlayın
git clone https://github.com/ubselcuk/spotify-cli.git
- Dosyanın olduğu dizine gidin
cd spotify-cli
- Gereksinimleri yükleyin
pip install -r ???
Nedir bu cache?
Alias
hehe boi
Kullanım
Önemli uyarı:
Bu andan itibaren komutlarda alias eklenildiğini varsayıp sc
kullanacağım. Eğer alias eklemediyseniz komutları kullanırken aşağıdaki adımları takip etmeniz gerekmekte
- Dosyayı klonladığınız dizine gidin
cd dosya/konumu
- Komut vererek cli isimli python dosyasını çalıştırın, eğer herhangi bir komut vermezseniz uyarı verecektir.
python3 cli.py help
Komut satırından komutları ve komutlar ile ilgili basit bilgilere bakmak için
sc help
sc h
Sonraki şarkıya geçmek için next
veya n
komutunu kullanabilirsiniz.
sc next
sc n
Önceki şarkıya geri dönmek için prev
, back
veya b
komutunu kullanabilirsiniz.
sc prev
sc back
sc b
Aktif olan cihazı ve kullanıcıyı göstermek için device
, devices
veya d
komutunu kullanabilirsiniz.
sc devices
sc device
sc d
Müziği tekrarlamak için repeat
veya r
komutunu kullanabilirsiniz ancak tekrarlama seçeneğini de belirtmeniz gerekiyor. 3 farklı seçim yapabilirsiniz.
- track - şarkıyı döngüye almak için
- context - şu anda çaldığınız listeyi döngüye almak için
- off - döngüleri kapatmak için
Bu seçeneklerden aynı anda sadece bir tanesi aktif oluyor, örneğin önce track
daha sonra context
komutu kullandığınızda şarkıyı dömgüye alma seçiminiz iptal oluyor.
sc repeat track
sc repeat context
sc repeat off
sc r off
Müziğin ses seviyesini ayarlamak için volume
veya v
komutunu kullanabilirsiniz. Eğer ses seviyesini belirtmezseniz şu anki ses seviyesini gösterir.
sc volume
sc v
Eğer ses seviyesini değiştirmek istiyorsanız volume
veya v
komutundan sonra 1
ile 100
aralığında istediğiniz değeri seçebilirsiniz. Aralığın dışındaki değerler hata verecektir.
sc volume 42
sc v 42
Şu anda çalan şarkıyı ve sanatçıyı görmek için now playing
veya np
komutunu kullanabilirsiniz.
sc now playing
sc np
Çalan şarkıyı durdurmak için pause
, stop
veya s
komutunu kullanabilirsiniz. Eğer şarkı çalmıyorsa bir uyarı mesajı gösterecektir.
sc pause
sc stop
sc s
Durmuş olan şarkıyı başlatmak için start
, play
veya p
komutunu kullanabilirsiniz. Eğer şarkı çalıyorsa bir uyarı mesajı gösterecektir. Sıkça karşılaşılan bir sorun olarak, spotify daemon ilk açıldığında herhangi bir şarkı belirtilmemişse hata verebiliyor.
sc start
sc play
sc p
Girmiş olduğunuz bilgileri göstermek için current user
veya cu
komutunu kullanabilirsiniz. Bu komutun gösterdiği bilgiler aşağıda sıralanmıştır.
- Client Id
- Client Secret
- Redirect Uri
- Username
Lisans
aa
Teşekkürler
Geliştirme testlerine katılanlar
Bu dökümantasyon en son 00000 tarihinde güncellenmiştir.
TODO
search - play
history List your recently played tracks.
Save a track, album, artist, or playlist.
seek Seek to time (default unit: seconds) in the current track.
$ spotify status -vv
Track Nights (03:31 / 05:07)
Artist Frank Ocean
Album Blonde
Status Playing (on repeat, 60% volume)
spotify search red velvet
Search results for "red velvet"
# Track Artist
--- ----------------------------------------- ---------------------------
1 Psycho Red Velvet
2 Monster Red Velvet - IRENE & SEULGI
3 Bad Boy Red Velvet
image url's