Taula de continguts:
- Subministraments
- Pas 1: configureu Wayscript i Alexa
- Pas 2: feu un compte de RapidAPI
- Pas 3: escriviu un programa bàsic
- Pas 4: formatar les lletres
- Pas 5: entrada i sortida
- Pas 6: afegiu el gatell Alexa
- Pas 7: Afegir el vostre programa Python
- Pas 8: envieu les lletres i confirmeu amb Alexa
- Pas 9: ja heu acabat
Vídeo: "Alexa, envia'm les lletres de _____": 9 passos (amb imatges)
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:11
Escoltes una cançó amb la qual vols cantar? Normalment hauríeu de passar per l’àrdua tasca d’escriure el nom de la cançó a google, seguit de la paraula "lletra". Normalment, també hauríeu de fer una gran quantitat d’errors d’error, fer clic a una determinada quantitat de tecles i haver de fer front al inevitable retard del dispositiu. Quan hagis trobat les lletres, veuràs que la teva cançó s’ha acabat i que tot aquest treball no servia per a res.
Potser esteu enmig d’una pandèmia mundial i demanar prestat el telèfon del vostre amic no sembla la idea més gran, i molt menys commovedora que la màquina de karaoke amagada al racó. Voleu estar protegit, però conèixer les lletres de la cançó és gairebé tan essencial. Necessiteu un mètode convenient i sense contacte per cercar lletres.
Potser ambdós escenaris siguin lleugers exageracions (el primer sens dubte més), però, tot i així, si s’envien lletres de cançons al vostre correu electrònic el segon que demaneu que s’enviïn, sens dubte seria molt convenient. Aquí és on entra aquest Instructable (juntament amb Alexa, Wayscript i una mica de Python). Demaneu a Alexa les lletres de la vostra cançó preferida i en pocs segons es lliuraran directament a la safata d'entrada.
Com a estudiant de secundària que començava el meu darrer any, he trobat que aquest projecte és força útil i, de fet, l’he utilitzat una quantitat important des que l’he construït (una raresa, tenint en compte que la majoria dels meus projectes es troben intactes mesos després).
Aquest tutorial és bastant per a principiants, però és útil conèixer alguns Python abans d’entrar.
Subministraments
Materials:
- Amazon Echo / Qualsevol altaveu intel·ligent basat en Alexa
- Compte WayScript (es configurarà en els passos següents)
- Compte RapidAPI
- Alguns coneixements de Python (no necessaris, però útils)
Pas 1: configureu Wayscript i Alexa
Què és Wayscript?
Wayscript és una potent eina que us permet executar programes mitjançant diversos activadors. Utilitzarem el disparador Alexa en aquest manual instructiu, però no dubteu a experimentar / explorar el programari: podeu afegir tota mena de funcionalitats.
Per començar, fem un compte amb Wayscript:
- Feu clic als botons "Comença gratis" o "Registra't". He utilitzat l'opció "Registra't amb Github" perquè em semblava més convenient.
- Un cop hàgiu creat un compte, us dirigirà a l'entorn de desenvolupament de Wayscript. És útil consultar el tutorial abans de començar.
- Un cop hàgiu completat el tutorial, aneu al vostre perfil. Feu clic al botó "Crea un script nou" i se us demanarà que assigneu un nom al vostre projecte. L'he anomenat "Lletres de cançons", però podeu posar-li el nom que vulgueu. Assegureu-vos que sigui fàcil de dir, ja que utilitzarà el nom del programa quan demaneu a Alexa que us enviï la lletra.
- Un cop fet el vostre nom, feu clic al botó "crear" i us dirigirà a un nou entorn de desenvolupament de Wayscript. Hi tornarem aviat.
Abans de continuar, connectem el vostre compte de Wayscript a Alexa:
- Aneu a amazon.com i inicieu la sessió al vostre compte, concretament el que està connectat al vostre altaveu habilitat per Alexa.
- Aneu a aquest enllaç: https://www.amazon.com/WayScript-Inc/dp/B07QXXG32… i feu clic a "habilita". Si l'enllaç no funciona per la raó que sigui, cerqueu Wayscript Alexa Skill; torneu a fer clic a "activa"
- Un cop hàgiu fet clic a activar, l’heu d’enllaçar al vostre compte de Wayscript. Feu clic a "Enllaça el compte" i se us dirigirà al lloc web de WayScript. Un cop hàgiu iniciat la sessió, hauria d'aparèixer la pantalla que diu "El vostre compte s'ha enllaçat correctament".
Un cop hàgiu configurat tot això, podem (gairebé) començar a programar.
Pas 2: feu un compte de RapidAPI
Per tal de cercar les lletres de la cançó, utilitzarem l'API Canarado Lyrics, accessible a través de RapidAPI. Si ja teniu un compte de RapidAPI, podeu ometre aquest pas, però si no, continueu llegint.
Comenceu creant el vostre compte de RapidAPI:
- Feu clic al botó "Registra't" a prop de l'extrem superior dret i registra't amb qualsevol de les opcions que tinguin (Google, Github, Facebook o registre normal).
- Un cop us hàgiu registrat, aneu a l'API Canarado Lyrics:
Si veieu una pantalla similar a la tercera imatge adjunta a dalt, heu completat aquest pas. Finalment estem preparats per començar a programar.
Pas 3: escriviu un programa bàsic
Com es va esmentar al pas anterior, l'API Canarado Lyrics es troba a:
Un cop allà, aneu a la meitat dreta de la pantalla amb la capçalera "Fragments de codi". Utilitzaré Python en aquest instructiu, però si preferiu un altre idioma, continueu i utilitzeu-lo.
Feu clic al menú desplegable amb l'etiqueta "(Node.js) Unrest" i aneu al vostre idioma escollit. Una vegada més, faré servir Python, específicament Python (Sol·licituds), ja que aquest programa requereix una sol·licitud a l’amfitrió de l’API per obtenir la major part de la informació. Copieu el codi fent clic al botó "Copia el codi" situat a la part superior dreta. Enganxeu aquest codi a l’editor de codi que trieu: utilitzaré l’entorn Notebook de Jupyter.
Un cop enganxat el programa, importeu el mòdul json de Python. Això ens permetrà imprimir les lletres. Afegiu el codi següent a la part superior (a sota de les sol·licituds d'importació)
importació json
Un cop hàgiu importat el mòdul json, el vostre programa hauria de ser així:
sol·licituds d’importació
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 = requests.request ("GET", url, headers = headers) print (response.text)
Assegureu-vos que el vostre programa tingui un aspecte similar (amb una clau API diferent) i, a continuació, aneu a la variable "url". Notareu que el paràmetre per defecte de Canarado és 'Zenith' de Denzel Curry. Podeu canviar-ho introduint qualsevol cançó que vulgueu. Per exemple, si volgués cercar informació sobre les lletres relacionades amb el thriller de Michael Jackson, puc introduir "thriller" en lloc de "zenith denzel curry", de manera que ara l'URL tingui el següent aspecte:
url = "https://canarado-lyrics.p.rapidapi.com/lyrics/thriller"
També podeu afegir espais sense cap mena de dubte: el navegador afegirà automàticament els% 2520 caràcters (els notareu en lloc dels espais de l’URL per defecte). Per exemple, una cerca de Gangstas Paradise podria tenir aquest aspecte:
url = "https://canarado-lyrics.p.rapidapi.com/lyrics/gangstas paradise"
Executeu el programa substituint el valor per defecte "zenith% 2520denzel% 2520curry" per qualsevol cançó que trieu. Notareu que les lletres estan impreses, però de manera difícil de llegir. És més: altra informació, inclosa la data de llançament de la cançó, el títol i la informació d’estat de l’API, obstaculitzen la visualització de les lletres. Fixem-ho en el següent pas.
Pas 4: formatar les lletres
No és massa difícil formatar les lletres de manera que siguin llegibles. La majoria de la gent amb un cert coneixement de la programació ho podrà fer amb força facilitat. En lloc d’imprimir simplement "response.text", fem servir el mètode.json (). Això organitzarà la informació de l'API en un diccionari i farà que tot sigui molt més accessible.
Per començar, creeu una variable que contingui 'response.json ()'. He anomenat la meva variable "dades".
dades = resposta.json ()
A continuació, utilitzeu el següent bucle "per" per accedir a les lletres.
per a i en dades ['contingut']:
imprimir (i ['lletres'])
El codi anterior navega fins a la clau "contingut" del diccionari de dades. Dins de la clau de contingut, el bucle for us permet navegar fins a la tecla "lletra". El codi ara hauria de ser similar a aquest:
sol·licituds d’importació
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 = requests.request ("GET", url, headers = headers) data = response.json () for i in data ['content']: print (i ['lyrics'])
Executeu aquest programa i notareu que les lletres són molt més llegibles. Al següent pas, afegirem algunes variables addicionals, de manera que puguem utilitzar el títol d’una cançó com a entrada i poder enviar les lletres a Alexa.
Pas 5: entrada i sortida
Fins ara hem estat escrivint el títol de la cançó al final de la URL. Estaria bé que poguéssim utilitzar una variable d’una entrada i concatenar les dues cadenes (URL i títol de la cançó). Fer-ho és realment bastant fàcil.
De moment, fem servir la funció d’entrada de Python. Un cop hàgim penjat el codi a Wayscript, farem servir el nostre discurs com a entrada. Creem una variable de títol de cançó establerta en una entrada que demana a l'usuari que "introdueixi un títol de cançó":
song_title = input ("Introduïu una cançó per trobar les lletres de:")
A continuació, concateneu aquesta cadena a l'URL, mitjançant l'operador '+' de Python per a les cadenes
url = "https://canarado-lyrics.p.rapidapi.com/lyrics/" + song_title
Ara, quan executeu el programa, ja no cal que editeu l'URL del programa. En lloc d’això, simplement responeu a l’entrada amb el títol de la vostra cançó i les lletres de la cançó s’han d’imprimir.
El vostre programa ara hauria de tenir un aspecte similar a aquest:
sol·licituds d’importació
import json song = input ("Introduïu una cançó per trobar la lletra de:") url = "https://canarado-lyrics.p.rapidapi.com/lyrics/" + headers = {'x-rapidapi-host': "canarado-lyrics.p.rapidapi.com", 'x-rapidapi-key': "YOUR-API-KEY-AQUÍ"} response = requests.request ("GET", url, headers = headers) data = response.json () for i in data ['content']: print (i ['lyrics'])
Finalment, creem una variable per generar les lletres. Comenceu creant un conjunt de variables en una cadena buida. A continuació, concateneu 'i [' lyrics ']' fins al final. Imprimiu la variable fora del bucle for.
lletra = ""
for i in data ['content']: lyrics + = i ['lyrics'] print (lletra)
El programa final hauria de ser així:
sol·licituds d’importació
import json song = input ("Introduïu una cançó per trobar la lletra de:") url = "https://canarado-lyrics.p.rapidapi.com/lyrics/" + headers = {'x-rapidapi-host': "canarado-lyrics.p.rapidapi.com", 'x-rapidapi-key': "YOUR-API-KEY-AQUÍ"} response = requests.request ("GET", url, headers = headers) data = response.json () lyrics = "" for i in data ['content']: lyrics + = i ['lyrics'] print (lyrics)
El programa imprimirà exactament el mateix, però ara teniu una variable que podeu utilitzar com a sortida. Ara, finalment, podem afegir la funcionalitat Alexa i Email amb Wayscript.
Pas 6: afegiu el gatell Alexa
Per afegir el primer activador, feu clic al botó "Afegeix un activador":
- Es mostrarà una barra de cerca: cerqueu "Alexa" i notareu el disparador d'Alexa. Si abans no heu utilitzat el disparador Alexa o si aquest és el vostre primer projecte, és possible que hàgiu de fer clic a "importa". Un cop importats, només cal que hi feu clic i s’hauria d’afegir.
- Activeu el disparador fent clic al botó en forma de píndola. Ha de quedar verd. A la part esquerra, veureu una secció que diu "Sortides". Feu clic a la casella de selecció que diu "Entrada parlada" i introduïu un valor similar a la nostra variable song_title anterior. Ara podem utilitzar la vostra entrada parlada en lloc de la declaració d’entrada que havíem utilitzat anteriorment
- Assegureu-vos que hàgiu escrit un valor per defecte (potser les vostres cançons preferides), ja que sense cap de vosaltres podreu trobar alguns errors.
En els passos següents, afegirem el nostre programa Python, el mètode Enviar correu electrònic i farem que Alexa confirmi que el mètode ha estat complet.
Pas 7: Afegir el vostre programa Python
Per afegir el vostre programa al vostre flux de Wayscript actual, feu clic a "Afegeix un pas"
- Cerqueu Python i feu clic a l’acció Python. Això hauria d'actualitzar el disparador i notareu que apareix una pestanya de l'esquerra.
- Passeu el cursor per sobre del programa al tauler lateral i notareu que apareix un botó "Edita el codi". Feu-hi clic i apareixerà un editor de pantalla completa.
- A l'editor de pantalla completa, copieu i enganxeu el programa python que havíem creat anteriorment.
- Suprimiu la variable song_title = input ("…") que havíem escrit i afegiu la variable d'entrada parlada que vam crear al pas anterior. Les variables creades en els passos anteriors es poden trobar a l'extrem inferior esquerre.
- El vostre nou programa hauria de tenir un aspecte similar a la 6a imatge adjunta a la part superior.
- Finalment, volem configurar les nostres lletres com a sortida. Per fer-ho, copieu i enganxeu el següent codi a la part inferior del programa (a sota o en lloc de la declaració d'impressió)
variables ['Song_Lyrics'] = lletra
Això crea una variable de sortida anomenada Song_Lyrics i l'estableix igual a la variable "lletra" que havíem creat abans. El vostre programa final hauria d’assemblar-se a la darrera imatge adjunta a dalt. Executeu el codi només una vegada, de manera que Wayscript sàpiga què passa i pugui crear les vostres variables de sortida. Això pot trigar uns quants moments, però si triga massa, potser haureu de tornar a carregar la pàgina. Wayscript conté alguns errors, de manera que el pitjor dels casos pot comportar haver de recrear l'script.
Pas 8: envieu les lletres i confirmeu amb Alexa
Tenim dos passos més per afegir al nostre flux WayScript: un pas que us permet enviar un correu electrònic a vosaltres mateixos i un altre que confirma que s’ha enviat un correu electrònic. Comencem creant el pas de correu electrònic.
- Feu clic a "Afegeix un pas", cerqueu "Enviar correu electrònic" i localitzeu la pestanya de l'esquerra
- Utilitzeu variables creades en els passos anteriors, com ara "Song_Name" (o Song_Title) i "Song_Lyrics"
- Podeu formatar el correu electrònic com vulgueu. Per exemple, he afegit la paraula "Lletres" després de la variable "Song_Name" i he afegit la frase "Aquí teniu la lletra de la cançó que heu sol·licitat" a la part superior.
Aquest script us enviarà un missatge al correu electrònic amb el qual us havíeu registrat. Si voleu enviar-lo a un altre missatge de correu electrònic, és possible que hagueu d’utilitzar l’acció de correu electrònic SMTP.
Finalment, confirmem que el correu electrònic s’ha enviat amb Alexa.
- Feu clic a "Afegeix pas" i torneu a cercar "Alexa". Afegiu l'acció Alexa.
- L'he configurat perquè, un cop enviat el correu electrònic, Alexa digui "S'han enviat les lletres de [Song_Name]"
Ja has acabat! Executeu el programa una vegada fent clic al botó "Executa". Si no hi ha errors, ara podeu utilitzar-lo amb Alexa.
Pas 9: ja heu acabat
Per utilitzar-lo amb Alexa, haureu d’utilitzar les ordres següents:
"Alexa, llança Wayscript"
Un cop Alexa hagi confirmat que s'ha llançat Wayscript, digueu:
"Executeu [Nom del programa] amb [Nom de la cançó]"
Per exemple, el meu programa es diu "Lletres de cançons": si vull que Alexa m'enviï la lletra a Thriller, diré:
'Run Song Lyrics amb Thriller'
Recomanat:
Aprenent de paraules de 2 lletres amb codi Morse: 5 passos
Aprenent de paraules de 2 lletres amb codi Morse: fa temps que intento aprendre les paraules de 2 lletres de Scrabble (tm) sense èxit. També he estat intentant aprendre de nou el codi Morse amb poc èxit. Vaig decidir provar un aprenentatge subliminal construint una caixa que mostrava contínuament el
Captura i envia imatges amb ESP32-Cam mitjançant el processador Wifi ESP8266 WeMos D1 R1 amb Uno: 7 passos
Captureu i envieu imatges amb ESP32-Cam mitjançant el processador Wifi ESP8266 WeMos D1 R1 amb Uno: Captureu la imatge mitjançant el processador ESP32-Cam (OV2640) mitjançant el processador Wi-Fi ESP8266 WeMos D1 R1 amb Uno i envieu-la al correu electrònic, deseu-la a Google Drive i envieu-la a Whatsapp mitjançant Twilio.Requisits: ESP8266 WeMos D1 R1 WiFI Processor with Uno (https: // protosupplies
Envia un SMS amb temperatura a temps: 5 passos (amb imatges)
Envia un SMS amb Temperatura a temps: La idea és obtenir un SMS de temperatura de casa dels meus pares. Res de fantàstic, simplement posar peces juntes ràpidament. Les parts són: Geekcreit ® Placa de control ATmega328P Nano V3 compatible amb placa ArduinoDIY NANO IO Shield V1.O compatible per a ArduinoDS130
Elimina les lletres de la majoria de cançons: 6 passos (amb imatges)
Elimina les lletres de la majoria de cançons: t'ensenyarà a eliminar les veus de gairebé qualsevol cançó. Això és fantàstic per crear la vostra pròpia cançó de karaoke. Ara, abans de començar, vull que sàpiga que això no eliminarà del tot el cantant, però en farà una bona feina, així que val la pena
Restaura les lletres pintades a les tecles del teclat: 5 passos
Restaura les lletres pintades a les tecles del teclat: el meu ordinador portàtil i el nou ordinador d’escriptori tenen tecles negres d’aspecte fresc amb lletres pintades de blanc. Al cap d’un temps, certes tecles perden les lletres pintades per cops d’ungles. Tingueu en compte les tecles A, S, D, H, L, E, R, T, O, N i M. Amb poca llum pot