İçindekiler:

"Alexa, Bana Şarkı Sözlerini _____ Gönder": 9 Adım (Resimlerle)
"Alexa, Bana Şarkı Sözlerini _____ Gönder": 9 Adım (Resimlerle)

Video: "Alexa, Bana Şarkı Sözlerini _____ Gönder": 9 Adım (Resimlerle)

Video:
Video: ben bilmiyorum bu şarkıyı !!! #shorts #keşfet 2024, Temmuz
Anonim
Image
Image

Birlikte söylemek istediğiniz bir şarkıyı mı dinliyorsunuz? Normalde şarkının adını google'a yazıp ardından "şarkı sözleri" kelimesini yazmak gibi zorlu bir görevden geçmeniz gerekirdi. Ayrıca normalde bol miktarda yazım hatası yapar, belirli sayıda tuşa yanlış tıklar ve cihazınızın kaçınılmaz gecikmesiyle uğraşmak zorunda kalırsınız. Sözleri bulduğunuzda, şarkınızın bittiğini ve tüm bu çalışmaların boşuna olduğunu görürsünüz.

Belki de küresel bir salgının ortasındasınız ve arkadaşınızın telefonunu ödünç almak en iyi fikir gibi görünmüyor, köşeye sıkışmış Karaoke Makinesi'ne dokunmak bir yana. Korunmak istiyorsun ama şarkının sözlerini bilmek de bir o kadar önemli. Şarkı sözlerini aramak için kullanışlı, temassız bir yönteme ihtiyacınız var.

Belki bu senaryoların ikisi de hafif abartılardır (birincisi kesinlikle daha fazla), ancak yine de, şarkı sözlerinin gönderilmesini istediğiniz anda e-postanıza gönderilmesi kesinlikle oldukça uygun olacaktır. İşte bu Eğitilebilir Kitap (Alexa, Wayscript ve biraz Python ile birlikte) burada devreye giriyor. Sadece Alexa'dan en sevdiğiniz şarkının sözlerini isteyin ve birkaç saniye içinde doğrudan gelen kutunuza teslim edilecekler.

Son sınıfa giden bir lise öğrencisi olarak, bu projeyi oldukça faydalı buldum ve onu inşa ettiğimden beri gerçekten önemli miktarda kullandım (nadirdir - projelerimin çoğuna aylar sonra dokunulmamış olarak bulunursa).

Bu eğitim oldukça başlangıç seviyesindedir, ancak konuya girmeden önce biraz Python bilmek faydalı olacaktır.

Gereçler

Malzemeler:

  1. Amazon Echo/Herhangi bir Alexa Tabanlı Akıllı Hoparlör
  2. WayScript hesabı (Aşağıdaki adımlarda kurulum yapılacaktır)
  3. RapidAPI hesabı
  4. Biraz Python Bilgisi (Gerekli değil ama faydalı)

1. Adım: Wayscript ve Alexa'yı Ayarlayın

Wayscript ve Alexa'yı Ayarlayın
Wayscript ve Alexa'yı Ayarlayın
Wayscript ve Alexa'yı Ayarlayın
Wayscript ve Alexa'yı Ayarlayın
Wayscript ve Alexa'yı Ayarlayın
Wayscript ve Alexa'yı Ayarlayın

Wayscript nedir?

Wayscript, programları çeşitli tetikleyiciler kullanarak çalıştırmanıza izin veren güçlü bir araçtır. Bu Eğitilebilir Dosyada Alexa tetikleyicisini kullanacağız, ancak yazılımı denemekten / keşfetmekten çekinmeyin - ekleyebileceğiniz her türlü işlevsellik var.

Başlamak için Wayscript ile bir hesap yapalım:

  1. 'Ücretsiz Başlayın' veya 'Kaydol' düğmelerine tıklayın. 'Github ile Kaydol' seçeneğini en uygun hissettiğim için kullandım.
  2. Bir hesap oluşturduktan sonra, Wayscript'in geliştirme ortamına yönlendirileceksiniz. Başlamadan önce öğreticiyi gözden geçirmek yararlıdır.
  3. Eğiticiyi tamamladıktan sonra profilinize gidin. 'Yeni bir komut dosyası oluştur' düğmesini tıklayın ve projenize bir ad vermeniz istenecektir. Adını 'Şarkı Sözleri' koydum, ama sen ona istediğin herhangi bir isim verebilirsin. Alexa'dan sana şarkı sözlerini göndermesini istediğinde program adını kullanacağın için söylemenin kolay olduğundan emin ol.
  4. Adınızı oluşturduktan sonra, 'oluştur' düğmesine tıklayın ve yeni bir Wayscript geliştirme ortamına yönlendirileceksiniz. Yakında buna geri döneceğiz.

Devam etmeden önce, Wayscript hesabınızı Alexa'ya bağlayalım:

  1. Amazon.com'a gidin ve özellikle Alexa özellikli hoparlörünüze bağlı olan hesabınızda oturum açın.
  2. Bu bağlantıya gidin: https://www.amazon.com/WayScript-Inc/dp/B07QXXG32… ve 'etkinleştir'i tıklayın. Bağlantı herhangi bir nedenle çalışmazsa, Wayscript Alexa Skill'i arayın - tekrar 'etkinleştir'i tıklayın
  3. Etkinleştir'e tıkladıktan sonra, bunu Wayscript hesabınıza bağlamanız gerekir. 'Hesabı Bağla'yı tıklayın ve wayscript'in web sitesine yönlendirileceksiniz. Giriş yaptıktan sonra, 'Hesabınız başarıyla bağlandı' yazan bir ekran açılmalıdır.

Tüm bunları ayarladıktan sonra, (neredeyse) programlamaya başlayabiliriz!

2. Adım: RapidAPI Hesabı Oluşturun

RapidAPI Hesabı Oluşturun
RapidAPI Hesabı Oluşturun
RapidAPI Hesabı Oluşturun
RapidAPI Hesabı Oluşturun
RapidAPI Hesabı Oluşturun
RapidAPI Hesabı Oluşturun

Şarkının sözlerini aramak için RapidAPI üzerinden erişilebilen 'Canarado Lyrics API'yi kullanacağız. Halihazırda bir RapidAPI hesabınız varsa bu adımı atlayabilirsiniz, yoksa okumaya devam edin.

RapidAPI hesabınızı oluşturarak başlayın:

  1. Sağ üst köşedeki 'Kaydol' Düğmesine tıklayın ve sahip oldukları seçeneklerden herhangi biriyle kaydolun (Google, Github, Facebook veya normal kayıt).
  2. Kaydolduktan sonra Canarado Lyrics API'sine gidin:

Yukarıdaki üçüncü görsele benzer bir ekran görüyorsanız bu adımı tamamlamışsınız demektir. Sonunda programlamaya başlamaya hazırız.

Adım 3: Temel Bir Program Yazın

Temel Bir Program Yazın
Temel Bir Program Yazın
Temel Bir Program Yazın
Temel Bir Program Yazın
Temel Bir Program Yazın
Temel Bir Program Yazın

Önceki adımda belirtildiği gibi, Canarado Şarkı Sözleri API'si şu adreste bulunur:

Bir kez orada, 'Kod Parçacıkları' başlığıyla ekranın sağ yarısına gidin. Bu talimatta Python kullanacağım, ancak başka bir dili tercih ederseniz, devam edin ve onu kullanın.

'(Node.js) Huzursuzluk' etiketli açılır menüyü tıklayın ve tercih ettiğiniz dile gidin. Bu program, bilgilerin çoğu için API'nin ana bilgisayarına bir istek gerektirdiğinden, yine Python - özellikle Python (İstekler) - kullanacağım. Sağ üst köşedeki 'kodu kopyala' düğmesine tıklayarak kodu kopyalayın. Bu kodu seçtiğiniz kod düzenleyicinize yapıştırın - Jupyter's Notebook ortamını kullanacağım.

Programı yapıştırdıktan sonra Python'un json modülünü içe aktarın. Bu, şarkı sözlerini yazdırmamızı sağlayacaktır. Aşağıdaki kodu en üste ekleyin (içe aktarma isteklerinin altında)

json'u içe aktar

json modülünü içe aktardıktan sonra programınız şöyle görünmelidir:

içe aktarma istekleri

import json url = "https://canarado-lyrics.p.rapidapi.com/lyrics/zenith%2520denzel%2520curry" üstbilgileri = { 'x-rapidapi-host': "canarado-lyrics.p.rapidapi.com", 'x-rapidapi-key': "API-ANAHTARINIZ BURADA" } yanıt = request.request("GET", url, headers=headers) print(response.text)

Programınızın benzer göründüğünden emin olun (farklı bir API Anahtarıyla) ve ardından 'url' değişkenine gidin. Canarado'nun varsayılan parametresinin Denzel Curry'den 'Zenith' olduğunu fark edeceksiniz. İstediğiniz herhangi bir şarkıyı girerek bunu değiştirebilirsiniz. Örneğin, Michael Jackson'ın Gerilimi ile ilgili şarkı sözü bilgilerini aramak istersem, "zenith denzel curry" yerine "gerilim" girebilirim, öyle ki url şu şekilde görünür:

url = "https://canarado-lyrics.p.rapidapi.com/lyrics/thriller"

Ayrıca tereddüt etmeden boşluk ekleyebilirsiniz - tarayıcı %2520 karakterini otomatik olarak ekleyecektir (Varsayılan url'de boşluk yerine bunları fark edeceksiniz). Örneğin, Gangstas Paradise araması şöyle görünebilir:

url = "https://canarado-lyrics.p.rapidapi.com/lyrics/gangstas cenneti"

"zenith%2520denzel%2520curry" varsayılan değerini seçtiğiniz herhangi bir şarkıyla değiştirerek programı çalıştırın. Sözlerin yazdırıldığını, ancak okunması zor bir şekilde olduğunu fark edeceksiniz. Dahası - şarkının çıkış tarihi, başlığı ve API'nin durum bilgileri gibi diğer bilgiler şarkı sözlerinin görülmesini engelliyor. Bunu bir sonraki adımda düzeltelim.

Adım 4: Şarkı Sözlerini Biçimlendirme

Şarkı Sözlerini Biçimlendirmek
Şarkı Sözlerini Biçimlendirmek

Şarkı sözlerini okunabilir olacak şekilde biçimlendirmek çok zor değil. Biraz programlama bilgisi olan çoğu insan bunu oldukça kolay bir şekilde yapabilecektir. Basitçe "response.text" çıktısını almak yerine.json() yöntemini kullanalım. Bu, API'nin bilgilerini bir sözlükte düzenleyecek ve her şeyi çok daha erişilebilir hale getirecektir.

Başlamak için, 'response.json()' dosyasını tutacak bir değişken oluşturun. Değişkenime 'data' adını verdim.

veri = yanıt.json()

Ardından, şarkı sözlerine erişmek için aşağıdaki 'for' döngüsünü kullanın.

['içerik'] içindeki i için:

print(i['şarkı sözleri'])

Yukarıdaki kod, veri sözlüğünün 'içerik' anahtarına gider. İçerik anahtarı içinde, for döngüsü 'şarkı sözleri' anahtarına gitmenizi sağlar. Kod şimdi şuna benzer görünmelidir:

içe aktarma istekleri

import json url = "https://canarado-lyrics.p.rapidapi.com/lyrics/YOUR-SONG-BURADA" üstbilgileri = { 'x-rapidapi-host': "canarado-lyrics.p.rapidapi.com", 'x-rapidapi-key': "API-KEY-BURADA" } yanıt = request.request("GET", url, headers=headers) data = i in data['content'] için yanıt.json(): print(i['şarkı sözleri'])

Bu programı çalıştırın ve şarkı sözlerinin çok daha okunaklı olduğunu fark edeceksiniz. Bir sonraki adımda, bir şarkının başlığını girdi olarak kullanabilmemiz ve şarkı sözlerini Alexa'ya çıkarabilmemiz için birkaç ekstra değişken ekleyeceğiz.

Adım 5: Girdiler ve Çıktılar

Girdiler ve çıktılar
Girdiler ve çıktılar
Girdiler ve çıktılar
Girdiler ve çıktılar

Şimdiye kadar, URL'nin sonunda şarkının adını yazıyorduk. Bir girdiden bir değişken kullanıp iki diziyi (url ve şarkı başlığı) birleştirebilsek iyi olurdu. Bunu yapmak aslında oldukça kolaydır.

Şimdilik Python'un giriş fonksiyonunu kullanalım. Kodu Wayscript'e yüklediğimizde, bunun yerine konuşmamızı girdi olarak kullanacağız. Kullanıcıdan "bir şarkı başlığı girmesini" isteyen bir girişe ayarlanmış bir şarkı başlığı değişkeni oluşturalım:

song_title = input("Şarkı sözlerini bulmak için bir şarkı girin: ")

Ardından, Python'un Dizeler için '+' operatörünü kullanarak bu dizeyi url ile birleştirin

url = "https://canarado-lyrics.p.rapidapi.com/lyrics/" + song_title

Artık programı çalıştırdığınızda, artık program içinde url'yi düzenlemenize gerek yok. Bunun yerine, girişe şarkınızın başlığıyla yanıt verin ve şarkının sözleri yazdırılmalıdır.

Programınız şimdi şuna benzer görünmelidir:

içe aktarma istekleri

import json song = input("Şarkı sözlerini bulmak için bir şarkı girin: ") url = "https://canarado-lyrics.p.rapidapi.com/lyrics/" + şarkı başlıkları = { 'x-rapidapi-host': "canarado-lyrics.p.rapidapi.com", 'x-rapidapi-key': "API-ANAHTARINIZ BURADA" } yanıt = request.request("GET", url, başlıklar=başlıklar) veri = yanıt data['content'] içindeki i için.json(): print(i['şarkı sözleri'])

Son olarak, sözlerin çıktısını almak için bir değişken oluşturalım. Boş bir dizeye bir değişken kümesi oluşturarak başlayın. Ardından, sonuna 'i['şarkı sözleri']' ekleyin. For döngüsünün dışındaki değişkeni yazdırın.

şarkı sözleri = ""

for i in data['content']: şarkı sözleri += i['şarkı sözleri'] print(şarkı sözleri)

Son program şöyle görünmelidir:

içe aktarma istekleri

import json song = input("Şarkı sözlerini bulmak için bir şarkı girin: ") url = "https://canarado-lyrics.p.rapidapi.com/lyrics/" + şarkı başlıkları = { 'x-rapidapi-host': "canarado-lyrics.p.rapidapi.com", 'x-rapidapi-key': "API-ANAHTARINIZ BURADA" } yanıt = request.request("GET", url, başlıklar=başlıklar) veri = yanıt.json() şarkı sözleri = "" for i in data['content']: şarkı sözleri += i['şarkı sözleri'] print(şarkı sözleri)

Program aynı şeyi yazdıracaktır, ancak artık çıktı olarak kullanabileceğiniz bir değişkeniniz var. Artık nihayet Wayscript ile Alexa ve E-posta işlevselliğini ekleyebiliriz.

Adım 6: Alexa Tetikleyicisini Ekleme

Alexa Tetikleyicisini Ekleme
Alexa Tetikleyicisini Ekleme
Alexa Tetikleyicisini Ekleme
Alexa Tetikleyicisini Ekleme
Alexa Tetikleyicisini Ekleme
Alexa Tetikleyicisini Ekleme

İlk tetikleyicinizi eklemek için 'Tetikleyici Ekle' düğmesini tıklayın:

  1. Bir arama çubuğu görünecek - 'Alexa' için arama yapın ve Alexa tetikleyicisini fark edeceksiniz. Bundan önce Alexa tetikleyicisini kullanmadıysanız veya bu ilk projenizse, 'içe aktar'ı tıklamanız gerekebilir. İçe aktarıldıktan sonra üzerine tıklamanız yeterlidir; eklenmelidir.
  2. Hap şeklindeki anahtara tıklayarak tetiği etkinleştirin. Yeşil hale gelmelidir. Sol tarafta, 'Çıktılar' yazan bir bölüm göreceksiniz. 'Spoken Input' yazan onay kutusunu tıklayın ve önceki song_title değişkenimize benzer bir değer girin. Artık daha önce kullandığımız girdi ifadesi yerine sözlü girdinizi kullanabiliriz.
  3. Varsayılan bir değer (belki de en sevdiğiniz şarkılar) yazdığınızdan emin olun, çünkü bir değer olmadan birkaç hatayla karşılaşabilirsiniz.

Sonraki adımlarda, Python Programımızı, E-posta Gönder yöntemini ekleyeceğiz ve Alexa'nın yöntemin tamamlandığını onaylamasını sağlayacağız.

7. Adım: Python Programınızı Ekleme

Python Programınızı Ekleme
Python Programınızı Ekleme
Python Programınızı Ekleme
Python Programınızı Ekleme
Python Programınızı Ekleme
Python Programınızı Ekleme
Python Programınızı Ekleme
Python Programınızı Ekleme

Programınızı mevcut Wayscript akışınıza eklemek için 'Add Step'e tıklayın.

  1. Python'u arayın ve Python eylemine tıklayın. Bu, tetikleyiciyi yenilemeli ve sol taraftaki bir sekmenin göründüğünü fark edeceksiniz.
  2. Yan paneldeki programın üzerine gelin ve bir 'Kodu Düzenle' düğmesinin açıldığını göreceksiniz. Üzerine tıklayın ve tam ekran bir düzenleyici açılacaktır.
  3. Tam ekran düzenleyicide daha önce oluşturduğumuz python programını kopyalayıp yapıştırın.
  4. Yazmış olduğumuz song_title = input("….") değişkenini silin ve bir önceki adımda oluşturduğumuz sözlü giriş değişkenini ekleyin. Önceki adımlarda oluşturulan değişkenler sol alt köşede bulunabilir.
  5. Yeni programınız, yukarıda ekli 6. resme benzer görünmelidir.
  6. Son olarak söz değişkenimizi çıktı olarak ayarlamak istiyoruz. Bunu yapmak için aşağıdaki kodu kopyalayıp programınızın altına yapıştırın (yazdır ifadesinin altına veya yerine)

değişkenler['Song_Lyrics'] = şarkı sözleri

Bu, Song_Lyrics adında bir çıktı değişkeni yaratır ve onu daha önce yarattığımız 'şarkı sözü' değişkenine eşit olarak ayarlar. Son programınız, yukarıda ekli son resim gibi görünmelidir. Kodu yalnızca bir kez çalıştırın - böylece Wayscript neler olduğunu bilir ve çıktı değişkenlerinizi oluşturabilir. Bu birkaç dakika sürebilir, ancak çok uzun sürerse sayfayı yeniden yüklemeniz gerekebilir. Wayscript birkaç hata içerir, bu nedenle en kötü senaryo, komut dosyasını yeniden oluşturmayı gerektirebilir.

Adım 8: Şarkı Sözlerini Gönderin ve Alexa ile Onaylayın

Şarkı Sözlerini Gönderin ve Alexa ile Onaylayın
Şarkı Sözlerini Gönderin ve Alexa ile Onaylayın
Şarkı Sözlerini Gönderin ve Alexa ile Onaylayın
Şarkı Sözlerini Gönderin ve Alexa ile Onaylayın
Şarkı Sözlerini Gönderin ve Alexa ile Onaylayın
Şarkı Sözlerini Gönderin ve Alexa ile Onaylayın

WayScript akışımıza eklenecek iki adım daha var - kendinize bir e-posta göndermenize izin veren bir adım ve bir e-postanın gönderildiğini onaylayan bir adım daha. E-posta adımını oluşturarak başlayalım.

  1. 'Adım Ekle'yi tıklayın, 'E-posta Gönder'i arayın ve sol taraftaki sekmeyi bulun
  2. 'Song_Name' (veya Song_Title) ve 'Song_Lyrics' gibi önceki adımlarda oluşturulan değişkenleri kullanın
  3. E-postayı istediğiniz gibi biçimlendirebilirsiniz. Örneğin, 'Şarkı_Adı' değişkeninden sonra "Şarkı Sözleri" kelimesini ekledim ve en üste yakın bir yere "İşte istediğiniz şarkının sözleri" cümlesini ekledim.

Bu komut dosyası, kaydolduğunuz e-postaya bir mesaj gönderecektir. Bunu farklı bir e-postaya göndermek isterseniz, bunun yerine SMTP E-posta Eylemini kullanmanız gerekebilir.

Son olarak, e-postanın Alexa ile gönderildiğini onaylayalım.

  1. Adım Ekle'yi tıklayın ve tekrar 'Alexa'yı arayın. Alexa eylemini ekleyin.
  2. E-posta gönderildikten sonra Alexa'nın '[Şarkı_Adı] şarkı sözleri gönderildi' diyecek şekilde ayarladım.

Bitirdin! 'Çalıştır' düğmesine tıklayarak programı bir kez çalıştırın. Herhangi bir hata yoksa artık Alexa ile kullanabilirsiniz.

Adım 9: İşiniz Bitti

Alexa ile kullanmak için aşağıdaki komutları kullanmanız gerekecek:

'Alexa, Wayscript'i başlat'

Alexa, Wayscript'in başlatıldığını onayladıktan sonra şunları söyleyin:

'[Şarkı Adı] ile [Programın Adını] çalıştırın'

Örneğin, programımın adı 'Şarkı Sözleri' - Alexa'nın bana Thriller'ın sözlerini göndermesini istersem, şunu söyleyeceğim:

'Gerilim ile Run Şarkı Sözleri'

Önerilen: