Sommario:

"Alexa, inviami i testi a _____": 9 passaggi (con immagini)
"Alexa, inviami i testi a _____": 9 passaggi (con immagini)

Video: "Alexa, inviami i testi a _____": 9 passaggi (con immagini)

Video:
Video: SKIN UPDATE + BRONZE SMOKEY EYE THAT IS EASY!! 2024, Dicembre
Anonim
Image
Image

Ascolti una canzone con cui vuoi cantare? Normalmente dovresti passare attraverso l'arduo compito di digitare il nome della canzone su google, seguito dalla parola "testi". Normalmente faresti anche una grande quantità di errori di battitura, cliccheresti male su una certa quantità di tasti e dovresti affrontare l'inevitabile ritardo del tuo dispositivo. Quando trovi i testi, scopri che la tua canzone è finita e che tutto quel lavoro è stato inutile.

Forse sei nel bel mezzo di una pandemia globale e prendere in prestito il telefono del tuo amico non sembra la migliore idea, tanto meno toccante che Karaoke Machine ha nascosto nell'angolo. Vuoi essere protetto, ma conoscere il testo della canzone è quasi altrettanto essenziale. Hai bisogno di un metodo conveniente e senza contatto per cercare i testi.

Forse entrambi questi scenari sono lievi esagerazioni (il primo sicuramente lo è di più), ma comunque, avere i testi delle canzoni inviati direttamente alla tua e-mail nel secondo in cui chiedi che vengano inviati sarebbe sicuramente abbastanza conveniente. È qui che entra in gioco questo Instructable (insieme ad Alexa, Wayscript e un po' di Python). Chiedi ad Alexa i testi della tua canzone preferita e in pochi secondi verranno consegnati direttamente alla tua casella di posta.

Come studente delle superiori che frequenta l'ultimo anno, ho trovato questo progetto piuttosto utile e l'ho effettivamente utilizzato una quantità significativa da quando l'ho costruito (una rarità - considerando che la maggior parte dei miei progetti vengono trovati intatti mesi dopo).

Questo tutorial è abbastanza per principianti, ma è utile conoscere un po' di Python prima di entrare.

Forniture

Materiali:

  1. Amazon Echo/qualsiasi altoparlante intelligente basato su Alexa
  2. Account WayScript (verrà configurato nei seguenti passaggi)
  3. Account RapidAPI
  4. Alcune conoscenze su Python (non necessarie, ma utili)

Passaggio 1: imposta Wayscript e Alexa

Configura Wayscript e Alexa
Configura Wayscript e Alexa
Configura Wayscript e Alexa
Configura Wayscript e Alexa
Configura Wayscript e Alexa
Configura Wayscript e Alexa

Cos'è Wayscript?

Wayscript è un potente strumento che ti consente di eseguire programmi utilizzando vari trigger. Useremo il trigger di Alexa in questo Instructable, ma sentiti libero di sperimentare/esplorare il software: ci sono tutti i tipi di funzionalità che puoi aggiungere.

Per iniziare, creiamo un account con Wayscript:

  1. Fai clic sui pulsanti "Inizia gratis" o "Registrati". Ho usato l'opzione "Registrati con Github" perché mi è sembrata la più conveniente.
  2. Una volta creato un account, verrai indirizzato all'ambiente di sviluppo di Wayscript. È utile seguire il tutorial prima di iniziare.
  3. Una volta completato il tutorial, vai al tuo profilo. Fai clic sul pulsante "Crea un nuovo script" e ti verrà chiesto di nominare il tuo progetto. L'ho chiamato "Testi delle canzoni", ma puoi chiamarlo come vuoi. Assicurati che sia facile da dire poiché utilizzerai il nome del programma quando chiedi ad Alexa di inviarti i testi.
  4. Una volta creato il tuo nome, fai clic sul pulsante "crea" e verrai indirizzato a un nuovo ambiente di sviluppo Wayscript. Torneremo presto su questo.

Prima di continuare, colleghiamo il tuo account Wayscript ad Alexa:

  1. Vai su amazon.com e accedi al tuo account, in particolare quello collegato al tuo altoparlante abilitato per Alexa.
  2. Vai a questo link: https://www.amazon.com/WayScript-Inc/dp/B07QXXG32… e fai clic su 'abilita'. Se il collegamento non funziona per qualsiasi motivo, cerca l'abilità Wayscript Alexa - di nuovo, fai clic su "abilita"
  3. Dopo aver cliccato su abilita, devi collegarlo al tuo account Wayscript. Fai clic su "Collega account" e dovresti essere indirizzato al sito web di wayscript. Una volta effettuato l'accesso, dovrebbe apparire una schermata che dice "Il tuo account è stato collegato con successo".

Una volta che hai impostato tutto questo, possiamo (quasi) iniziare a programmare!

Passaggio 2: crea un account RapidAPI

Crea un account RapidAPI
Crea un account RapidAPI
Crea un account RapidAPI
Crea un account RapidAPI
Crea un account RapidAPI
Crea un account RapidAPI

Per cercare i testi della canzone, utilizzeremo "Canarado Lyrics API" accessibile tramite RapidAPI. Se hai già un account RapidAPI, puoi saltare questo passaggio, ma in caso contrario, continua a leggere.

Inizia creando il tuo account RapidAPI:

  1. Fai clic sul pulsante "Iscriviti" vicino all'angolo in alto a destra e registrati con una delle opzioni disponibili (Google, Github, Facebook o registrazione normale).
  2. Dopo esserti registrato, vai all'API Canarado Lyrics:

Se vedi una schermata simile alla terza immagine allegata sopra, hai completato questo passaggio. Siamo finalmente pronti per iniziare a programmare.

Passaggio 3: scrivere un programma di base

Scrivi un programma di base
Scrivi un programma di base
Scrivi un programma di base
Scrivi un programma di base
Scrivi un programma di base
Scrivi un programma di base

Come menzionato nel passaggio precedente, l'API di Canarado Lyrics si trova su:

Una volta lì, vai nella metà destra dello schermo con l'intestazione "Snippet di codice". Userò Python in questo istruibile, ma se preferisci un'altra lingua vai avanti e usa quella invece.

Fai clic sul menu a discesa con l'etichetta "(Node.js) Unrest" e vai alla lingua che preferisci. Ancora una volta, utilizzerò Python, in particolare Python (richieste), poiché questo programma richiede una richiesta all'host dell'API per la maggior parte delle informazioni. Copia il codice facendo clic sul pulsante "copia codice" in alto a destra. Incolla questo codice nel tuo editor di codice preferito: utilizzerò l'ambiente Notebook di Jupyter.

Una volta incollato il programma, importa il modulo json di Python. Questo ci permetterà di stampare i testi. Aggiungi il seguente codice in alto (sotto le richieste di importazione)

import json

Una volta importato il modulo json, il tuo programma dovrebbe assomigliare a questo:

richieste di importazione

import json url = "https://canarado-lyrics.p.rapidapi.com/lyrics/zenith%2520denzel%2520curry" headers = { 'x-rapidapi-host': "canarado-lyrics.p.rapidapi.com", 'x-rapidapi-key': "YOUR-API-KEY-HERE" } response = request.request("GET", url, headers=headers) print(response.text)

Assicurati che il tuo programma sia simile (con una chiave API diversa) e poi vai alla variabile "url". Noterai che il parametro predefinito di Canarado è "Zenith" di Denzel Curry. Puoi cambiarlo inserendo qualsiasi canzone che ti piace. Ad esempio, se volessi cercare informazioni sui testi riguardanti Thriller di Michael Jackson, posso inserire "thriller" al posto di "zenith denzel curry", in modo che l'URL ora assomigli a:

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

Puoi anche aggiungere spazi senza alcuna esitazione: il browser aggiungerà automaticamente i %2520 caratteri (li noterai al posto degli spazi nell'URL predefinito). Ad esempio, una ricerca per Gangstas Paradise potrebbe essere simile a questa:

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

Esegui il programma sostituendo il valore predefinito "zenith%2520denzel%2520curry" con qualsiasi canzone a tua scelta. Noterai che i testi sono stampati, ma in un modo difficile da leggere. Inoltre, altre informazioni, tra cui la data di uscita della canzone, il titolo e le informazioni sullo stato dell'API, ostruiscono la visualizzazione dei testi. Risolviamo questo problema nel passaggio successivo.

Passaggio 4: formattazione dei testi

Formattazione del testo
Formattazione del testo

Formattare i testi in modo che siano leggibili non è troppo difficile. La maggior parte delle persone con una certa conoscenza della programmazione sarà in grado di farlo abbastanza facilmente. Invece di stampare semplicemente "response.text", usiamo il metodo.json(). Ciò organizzerà le informazioni dell'API in un dizionario e renderà tutto molto più accessibile.

Per iniziare, crea una variabile per contenere 'response.json()'. Ho chiamato la mia variabile "dati".

dati = risposta.json()

Quindi, usa il seguente ciclo "for" per accedere ai testi.

for i in data['content']:

print(i['testi'])

Il codice precedente passa alla chiave "contenuto" del dizionario dei dati. All'interno della chiave del contenuto, il ciclo for ti consente di navigare fino alla chiave "testi". Il codice dovrebbe ora essere simile a questo:

richieste di importazione

import json url = "https://canarado-lyrics.p.rapidapi.com/lyrics/YOUR-SONG-HERE" headers = { 'x-rapidapi-host': "canarado-lyrics.p.rapidapi.com", 'x-rapidapi-key': "YOUR-API-KEY-HERE" } response = request.request("GET", url, headers=headers) data = response.json() for i in data['content']: print(i['testi'])

Esegui questo programma e noterai che i testi sono molto più leggibili. Nel passaggio successivo aggiungeremo alcune variabili extra, in modo da poter utilizzare il titolo di una canzone come input e in modo da poter inviare i testi ad Alexa.

Passaggio 5: ingressi e uscite

Ingressi e uscite
Ingressi e uscite
Ingressi e uscite
Ingressi e uscite

Finora, abbiamo digitato il titolo della canzone alla fine dell'URL. Sarebbe bello se potessimo usare una variabile da un input e concatenare le due stringhe (url e titolo della canzone). Farlo è in realtà abbastanza facile.

Per il momento, usiamo la funzione di input di Python. Una volta caricato il codice su Wayscript, utilizzeremo invece il nostro discorso come input. Creiamo una variabile del titolo del brano impostata su un input che chiede all'utente di "inserire il titolo di un brano":

song_title = input("Inserisci una canzone per trovare il testo di:")

Quindi, concatena questa stringa all'URL, usando l'operatore '+' di Python per le stringhe

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

Ora, quando esegui il programma, non è più necessario modificare l'URL all'interno del programma. Invece, rispondi semplicemente all'input con il titolo della tua canzone e il testo della canzone dovrebbe essere stampato.

Il tuo programma dovrebbe ora essere simile a questo:

richieste di importazione

import json song = input("Inserisci una canzone per trovare il testo di: ") url = "https://canarado-lyrics.p.rapidapi.com/lyrics/" + song headers = { 'x-rapidapi-host': "canarado-lyrics.p.rapidapi.com", 'x-rapidapi-key': "YOUR-API-KEY-HERE" } response = request.request("GET", url, headers=headers) data = response.json() for i in data['content']: print(i['lyrics'])

Infine, creiamo una variabile per l'output dei testi. Inizia creando una variabile impostata su una stringa vuota. Quindi, concatena 'i['lyrics']' alla fine. Stampa la variabile al di fuori del ciclo for.

testo = ""

for i in data['content']: lyrics += i['lyrics'] print(lyrics)

Il programma finale dovrebbe assomigliare a questo:

richieste di importazione

import json song = input("Inserisci una canzone per trovare il testo di: ") url = "https://canarado-lyrics.p.rapidapi.com/lyrics/" + song headers = { 'x-rapidapi-host': "canarado-lyrics.p.rapidapi.com", 'x-rapidapi-key': "YOUR-API-KEY-HERE" } response = request.request("GET", url, headers=headers) data = response.json() lyrics = "" for i in data['content']: lyrics += i['lyrics'] print(lyrics)

Il programma stamperà esattamente la stessa cosa, ma ora hai una variabile che puoi usare come output. Ora possiamo finalmente aggiungere la funzionalità Alexa ed Email con Wayscript.

Passaggio 6: aggiunta del trigger Alexa

Aggiunta del trigger Alexa
Aggiunta del trigger Alexa
Aggiunta del trigger Alexa
Aggiunta del trigger Alexa
Aggiunta del trigger Alexa
Aggiunta del trigger Alexa

Per aggiungere il tuo primo trigger, fai clic sul pulsante "Aggiungi trigger":

  1. Verrà visualizzata una barra di ricerca: cerca "Alexa" e noterai il trigger di Alexa. Se non hai utilizzato il trigger di Alexa prima di questo, o se questo è il tuo primo progetto, potresti dover fare clic su "importa". Una volta importato, fai semplicemente clic su di esso e dovrebbe essere aggiunto.
  2. Abilita il grilletto facendo clic sull'interruttore a forma di pillola. Dovrebbe diventare verde. Sul lato sinistro, noterai una sezione che dice "Uscite". Fai clic sulla casella di controllo "Input vocale" e inserisci un valore simile alla nostra precedente variabile song_title. Ora possiamo usare il tuo input parlato al posto dell'istruzione di input che avevamo usato in precedenza
  3. Assicurati di aver scritto un valore predefinito (forse le tue canzoni preferite), poiché senza uno potresti riscontrare alcuni errori.

Nei prossimi passaggi, aggiungeremo il nostro Programma Python, il metodo Invia e-mail e Alexa confermerà che il metodo è stato completato.

Passaggio 7: aggiunta del programma Python

Aggiungere il tuo programma Python
Aggiungere il tuo programma Python
Aggiungere il tuo programma Python
Aggiungere il tuo programma Python
Aggiungere il tuo programma Python
Aggiungere il tuo programma Python
Aggiungere il tuo programma Python
Aggiungere il tuo programma Python

Per aggiungere il tuo programma al tuo attuale flusso Wayscript, fai clic su "Aggiungi passaggio"

  1. Cerca Python e fai clic sull'azione Python. Questo dovrebbe aggiornare il trigger e noterai apparire una scheda a sinistra.
  2. Passa il mouse sopra il programma sul pannello laterale e noterai un pulsante "Modifica codice". Fare clic su di esso e verrà visualizzato un editor a schermo intero.
  3. Nell'editor a schermo intero, copia e incolla il programma Python che avevamo creato in precedenza.
  4. Elimina la variabile song_title = input("….") che avevamo scritto e aggiungi la variabile di input vocale che abbiamo creato nel passaggio precedente. Le variabili create nei passaggi precedenti si trovano nell'angolo in basso a sinistra.
  5. Il tuo nuovo programma dovrebbe essere simile alla sesta immagine allegata sopra.
  6. Infine, vogliamo impostare la nostra variabile dei testi come output. Per fare ciò, copia e incolla il seguente codice in fondo al tuo programma (sotto o al posto dell'istruzione print)

variabili['Song_Lyrics'] = testi

Questo crea una variabile di output chiamata Song_Lyrics e la imposta uguale alla variabile 'lyrics' che avevamo creato prima. Il tuo programma finale dovrebbe assomigliare all'ultima immagine allegata sopra. Esegui il codice solo una volta, in modo che Wayscript sappia cosa sta succedendo e possa creare le tue variabili di output. L'operazione potrebbe richiedere alcuni istanti, ma se impiega troppo tempo, potrebbe essere necessario ricaricare la pagina. Wayscript contiene alcuni bug, quindi lo scenario peggiore potrebbe comportare la necessità di ricreare lo script.

Passaggio 8: invia i testi e conferma con Alexa

Invia il testo e conferma con Alexa
Invia il testo e conferma con Alexa
Invia il testo e conferma con Alexa
Invia il testo e conferma con Alexa
Invia il testo e conferma con Alexa
Invia il testo e conferma con Alexa

Abbiamo altri due passaggi da aggiungere al nostro flusso WayScript: un passaggio che ti consente di inviare un'e-mail a te stesso e un altro che conferma che l'e-mail è stata inviata. Iniziamo creando il passaggio dell'email.

  1. Fai clic su "Aggiungi passaggio", cerca "Invia e-mail" e individua la scheda a sinistra
  2. Usa le variabili create nei passaggi precedenti come 'Song_Name' (o Song_Title) e 'Song_Lyrics'
  3. Puoi formattare l'email come preferisci. Ad esempio, ho aggiunto la parola "Lyrics" dopo la variabile "Song_Name" e ho aggiunto la frase "Ecco il testo della canzone che hai richiesto" nella parte superiore.

Questo script invierà un messaggio all'e-mail con cui ti sei registrato. Se desideri inviarlo a un'altra e-mail, potresti dover utilizzare invece l'azione e-mail SMTP.

Infine, confermiamo che l'e-mail è stata inviata con Alexa.

  1. Fai clic su "Aggiungi passaggio" e cerca nuovamente "Alexa". Aggiungi l'azione Alexa.
  2. L'ho impostato in modo che una volta inviata l'e-mail, Alexa dica "I testi di [Song_Name] sono stati inviati"

Hai finito! Esegui il programma una volta facendo clic sul pulsante "Esegui". Se non ci sono errori, ora puoi usarlo con Alexa.

Passaggio 9: hai finito

Per usarlo con Alexa, dovrai usare i seguenti comandi:

"Alexa, avvia Wayscript"

Una volta che Alexa ha confermato che Wayscript è stato avviato, dì:

'Esegui [Nome del programma] con [Nome brano]'

Ad esempio, il mio programma si chiama "Testi delle canzoni" - Se voglio che Alexa mi invii i testi di Thriller, dirò:

"Esegui i testi delle canzoni con Thriller"

Consigliato: