Tabla de contenido:
- Suministros
- Paso 1: Configura Wayscript y Alexa
- Paso 2: Cree una cuenta RapidAPI
- Paso 3: escriba un programa básico
- Paso 4: formatear las letras
- Paso 5: Entradas y salidas
- Paso 6: agregar el activador de Alexa
- Paso 7: Agregar su programa Python
- Paso 8: envía la letra y confirma con Alexa
- Paso 9: ¡Listo
Video: "Alexa, envíame la letra a _____": 9 pasos (con imágenes)
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:40
¿Estás escuchando una canción que quieres cantar? Normalmente tendrías que pasar por la ardua tarea de escribir el nombre de la canción en Google, seguido de la palabra "letra". Normalmente, también cometería una gran cantidad de errores tipográficos, haría clic mal en una cierta cantidad de teclas y tendría que lidiar con el inevitable retraso de su dispositivo. Cuando encuentras la letra, te das cuenta de que tu canción se acabó y todo ese trabajo fue en vano.
Tal vez estás en medio de una pandemia mundial y pedir prestado el teléfono de tu amigo no parece la mejor idea, y mucho menos tocar esa máquina de karaoke escondida en la esquina. Quieres estar protegido, pero conocer la letra de la canción es casi tan esencial. Necesita un método conveniente y sin contacto para buscar letras.
Quizás ambos escenarios son leves exageraciones (el primero definitivamente más), pero aún así, recibir las letras de las canciones directamente en su correo electrónico en el momento en que solicita que se envíen sería bastante conveniente. Ahí es donde entra este Instructable (junto con Alexa, Wayscript y un poco de Python). Simplemente pídale a Alexa la letra de su canción favorita y en unos segundos se la enviarán directamente a su bandeja de entrada.
Como estudiante de secundaria que entra en mi último año, he encontrado que este proyecto es bastante útil y de hecho lo he usado una cantidad significativa desde que lo construí (una rareza, considerando que la mayoría de mis proyectos se encuentran intactos meses después).
Este tutorial es bastante para principiantes, pero es útil conocer algo de Python antes de entrar.
Suministros
Materiales:
- Amazon Echo / cualquier altavoz inteligente basado en Alexa
- Cuenta de WayScript (se configurará en los siguientes pasos)
- Cuenta RapidAPI
- Algunos conocimientos de Python (no es necesario, pero es útil)
Paso 1: Configura Wayscript y Alexa
¿Qué es Wayscript?
Wayscript es una poderosa herramienta que le permite ejecutar programas usando varios disparadores. Usaremos el disparador de Alexa en este Instructable, pero siéntase libre de experimentar / explorar el software; hay todo tipo de funciones que puede agregar.
Para comenzar, creemos una cuenta con Wayscript:
- Haga clic en los botones 'Comenzar gratis' o 'Registrarse'. Usé la opción 'Registrarse con Github' porque me pareció más conveniente.
- Una vez que haya creado una cuenta, será dirigido al entorno de desarrollo de Wayscript. Es útil seguir el tutorial antes de comenzar.
- Una vez que haya completado el tutorial, navegue hasta su perfil. Haga clic en el botón 'Crear un nuevo script' y se le pedirá que nombre su proyecto. La he llamado 'Letras de canciones', pero puedes nombrarla como quieras. Solo asegúrese de que sea fácil de decir, ya que usará el nombre del programa cuando le pida a Alexa que le envíe la letra.
- Una vez que haya creado su nombre, haga clic en el botón "crear" y se le dirigirá a un nuevo entorno de desarrollo de Wayscript. Volveremos a esto pronto.
Antes de continuar, conectemos su cuenta de Wayscript a Alexa:
- Dirígete a amazon.com e inicia sesión en tu cuenta, específicamente la que está conectada a tu altavoz habilitado para Alexa.
- Vaya a este enlace: https://www.amazon.com/WayScript-Inc/dp/B07QXXG32… y haga clic en 'habilitar'. Si el enlace no funciona por alguna razón, busque Wayscript Alexa Skill; nuevamente, haga clic en 'habilitar'
- Una vez que haya hecho clic en habilitar, debe vincularlo a su cuenta de Wayscript. Haga clic en 'Vincular cuenta' y debería ser dirigido al sitio web de Wayscript. Una vez que inicie sesión, debería aparecer una pantalla que diga 'Su cuenta se ha vinculado correctamente'.
Una vez que haya configurado todo esto, ¡podemos (casi) comenzar a programar!
Paso 2: Cree una cuenta RapidAPI
Para buscar la letra de la canción, usaremos la 'API de Letras de Canarado' a la que se puede acceder a través de RapidAPI. Si ya tiene una cuenta RapidAPI, puede omitir este paso, pero si no, continúe leyendo.
Comience creando su cuenta RapidAPI:
- Haga clic en el botón 'Registrarse' cerca de la esquina superior derecha y regístrese con cualquiera de las opciones que tienen (Google, Github, Facebook o registro normal).
- Una vez que se haya registrado, diríjase a Canarado Lyrics API:
Si ve una pantalla similar a la tercera imagen adjunta arriba, ha completado este paso. Finalmente estamos listos para comenzar a programar.
Paso 3: escriba un programa básico
Como se mencionó en el paso anterior, la API de Canarado Lyrics se encuentra en:
Una vez allí, diríjase a la mitad derecha de la pantalla con el encabezado 'Fragmentos de código'. Usaré Python en este instructivo, pero si prefiere otro idioma, continúe y utilícelo en su lugar.
Haga clic en el menú desplegable con la etiqueta '(Node.js) Unrest' y navegue hasta el idioma que elija. Nuevamente, usaré Python, específicamente Python (Solicitudes), ya que este programa requiere una solicitud al host de la API para la mayor parte de la información. Copie el código haciendo clic en el botón 'copiar código' cerca de la esquina superior derecha. Pegue este código en el editor de código que elija; usaré el entorno de Jupyter's Notebook.
Una vez que haya pegado el programa, importe el módulo json de Python. Esto nos permitirá imprimir la letra. Agregue el siguiente código cerca de la parte superior (debajo de las solicitudes de importación)
importar json
Una vez que haya importado el módulo json, su programa debería verse así:
solicitudes de importación
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"} respuesta = solicitudes.request ("GET", url, encabezados = encabezados) print (texto de respuesta)
Asegúrese de que su programa se vea similar (con una clave de API diferente) y luego diríjase a la variable 'url'. Notarás que el parámetro predeterminado de Canarado es 'Zenith' de Denzel Curry. Puedes cambiar eso ingresando cualquier canción que te guste. Por ejemplo, si quisiera buscar información sobre la letra de Thriller de Michael Jackson, puedo ingresar "thriller" en lugar de "zenith denzel curry", de modo que la URL ahora se vea así:
url = "https://canarado-lyrics.p.rapidapi.com/lyrics/thriller"
También puede agregar espacios sin dudarlo: el navegador agregará automáticamente los% 2520 caracteres (los notará en lugar de espacios en la URL predeterminada). Por ejemplo, una búsqueda de Gangstas Paradise podría verse así:
url = "https://canarado-lyrics.p.rapidapi.com/lyrics/gangstas paraíso"
Ejecute el programa sustituyendo el valor predeterminado "zenith% 2520denzel% 2520curry" con cualquier canción de su elección. Notarás que las letras están impresas, pero de una manera difícil de leer. Además, otra información, incluida la fecha de lanzamiento de la canción, el título y la información de estado de la API, obstruyen la vista de la letra. Arreglemos esto en el siguiente paso.
Paso 4: formatear las letras
Dar formato a las letras de modo que sean legibles no es demasiado difícil. La mayoría de las personas con algún conocimiento de programación podrán hacer esto con bastante facilidad. En lugar de simplemente imprimir "response.text", usemos el método.json (). Esto organizará la información de la API en un diccionario y hará que todo sea mucho más accesible.
Para comenzar, cree una variable para contener 'response.json ()'. He nombrado mi variable "datos".
datos = respuesta.json ()
A continuación, utilice el siguiente bucle 'for' para acceder a la letra.
para i en datos ['contenido']:
imprimir (i ['letras'])
El código anterior navega a la tecla 'contenido' del diccionario de datos. Dentro de la tecla de contenido, el bucle for le permite navegar hasta la tecla 'letras'. El código ahora debería verse similar a esto:
solicitudes de importación
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"} respuesta = solicitudes.request ("GET", url, encabezados = encabezados) datos = respuesta.json () para i en datos ['contenido']: imprimir (i ['letras'])
Ejecute este programa y notará que las letras son mucho más legibles. En el siguiente paso, agregaremos algunas variables adicionales, para que podamos usar el título de una canción como entrada y para que podamos enviar la letra a Alexa.
Paso 5: Entradas y salidas
Hasta ahora, hemos estado escribiendo el título de la canción al final de la URL. Sería bueno si pudiéramos usar una variable de una entrada y concatenar las dos cadenas (URL y título de la canción). Hacer eso es bastante fácil.
Por el momento, usemos la función de entrada de Python. Una vez que carguemos el código en Wayscript, usaremos nuestro discurso como entrada. Creemos una variable de título de canción establecida en una entrada que solicite al usuario que "ingrese el título de una canción":
song_title = input ("Ingresa una canción para buscar la letra de:")
Luego, concatene esta cadena a la url, usando el operador '+' de Python para cadenas
url = "https://canarado-lyrics.p.rapidapi.com/lyrics/" + título_canción
Ahora, cuando ejecuta el programa, ya no necesita editar la URL dentro del programa. En su lugar, simplemente responda a la entrada con el título de su canción, y la letra de la canción debería imprimirse.
Su programa ahora debería verse similar a esto:
solicitudes de importación
import json song = input ("Ingresa una canción para encontrar la letra de:") url = "https://canarado-lyrics.p.rapidapi.com/lyrics/" + encabezados de canciones = {'x-rapidapi-host': "canarado-lyrics.p.rapidapi.com", 'x-rapidapi-key': "YOUR-API-KEY-HERE"} respuesta = solicitudes.request ("GET", url, encabezados = encabezados) datos = respuesta.json () para i en datos ['contenido']: imprimir (i ['letras'])
Finalmente, creemos una variable para generar la letra. Comience creando un conjunto de variables en una cadena vacía. Luego, concatene 'i [' lyrics ']' al final. Imprime la variable fuera del bucle for.
letras = ""
para i en datos ['contenido']: letra + = i ['letra'] imprimir (letra)
El programa final debería verse así:
solicitudes de importación
import json song = input ("Ingresa una canción para encontrar la letra de:") url = "https://canarado-lyrics.p.rapidapi.com/lyrics/" + encabezados de canciones = {'x-rapidapi-host': "canarado-lyrics.p.rapidapi.com", 'x-rapidapi-key': "YOUR-API-KEY-HERE"} respuesta = solicitudes.request ("GET", url, encabezados = encabezados) datos = respuesta.json () letras = "" para i en datos ['contenido']: letras + = i ['letras'] imprimir (letras)
El programa imprimirá exactamente lo mismo, pero ahora tiene una variable que puede usar como salida. Ahora, finalmente podemos agregar la funcionalidad de Alexa y correo electrónico con Wayscript.
Paso 6: agregar el activador de Alexa
Para agregar su primer activador, haga clic en el botón 'Agregar activador':
- Aparecerá una barra de búsqueda: busque 'Alexa' y notará el disparador de Alexa. Si no ha utilizado el activador de Alexa antes de esto, o si este es su primer proyecto, es posible que deba hacer clic en 'importar'. Una vez importado, simplemente haga clic en él y debería agregarse.
- Habilite el gatillo haciendo clic en el interruptor en forma de píldora. Debería volverse verde. En el lado izquierdo, verá una sección que dice 'Salidas'. Haga clic en la casilla de verificación que dice 'Entrada hablada' e ingrese un valor similar a nuestra variable anterior song_title. Ahora podemos usar su entrada hablada en lugar de la declaración de entrada que habíamos usado anteriormente.
- Asegúrese de haber escrito un valor predeterminado (quizás sus canciones favoritas), ya que sin uno puede encontrar algunos errores.
En los siguientes pasos, agregaremos nuestro programa Python, el método Enviar correo electrónico y haremos que Alexa confirme que el método se ha completado.
Paso 7: Agregar su programa Python
Para agregar su programa a su flujo actual de Wayscript, haga clic en 'Agregar paso'
- Busque Python y haga clic en la acción Python. Esto debería actualizar el disparador y notará que aparece una pestaña a la izquierda.
- Desplácese sobre el programa en el panel lateral y verá que aparece un botón 'Editar código'. Haga clic en él y aparecerá un editor de pantalla completa.
- En el editor de pantalla completa, copie y pegue el programa Python que habíamos creado anteriormente.
- Elimina la variable song_title = input ("….") Que habíamos escrito y agrega la variable de entrada hablada que creamos en el paso anterior. Las variables creadas en los pasos anteriores se pueden encontrar en la esquina inferior izquierda.
- Su nuevo programa debería verse similar a la sexta imagen adjunta arriba.
- Finalmente, queremos establecer nuestra variable de letras como salida. Para hacer esto, copie y pegue el siguiente código en la parte inferior de su programa (ya sea debajo o en lugar de la declaración de impresión)
variables ['Song_Lyrics'] = letras
Esto crea una variable de salida llamada Song_Lyrics y la iguala a la variable 'lyrics' que habíamos creado antes. Su programa final debe verse como la última imagen adjunta arriba. Ejecute el código solo una vez, para que Wayscript sepa lo que está sucediendo y pueda crear sus variables de salida. Esto puede tardar unos minutos, pero si tarda demasiado, es posible que deba volver a cargar la página. Wayscript contiene algunos errores, por lo que el peor de los casos puede implicar tener que volver a crear el script.
Paso 8: envía la letra y confirma con Alexa
Tenemos dos pasos más para agregar a nuestro flujo de WayScript: un paso que le permite enviarse un correo electrónico a sí mismo y otro que confirma que se ha enviado un correo electrónico. Comencemos por crear el paso de correo electrónico.
- Haga clic en 'Agregar paso', busque 'Enviar correo electrónico' y ubique la pestaña del lado izquierdo
- Utilice variables creadas en los pasos anteriores como 'Song_Name' (o Song_Title) y 'Song_Lyrics'
- Puede formatear el correo electrónico de la forma que desee. Por ejemplo, agregué la palabra "Letras" después de la variable "Nombre_de_canción" y agregué la oración "Aquí está la letra de la canción que solicitaste" cerca de la parte superior.
Este script enviará un mensaje al correo electrónico con el que se registró. Si desea enviarlo a un correo electrónico diferente, es posible que deba usar la Acción de correo electrónico SMTP en su lugar.
Finalmente, confirmemos que el correo electrónico se envió con Alexa.
- Haga clic en 'Agregar paso' y busque 'Alexa' nuevamente. Agrega la acción de Alexa.
- Lo configuré para que, una vez que se envíe el correo electrónico, Alexa diga "Se han enviado las letras de [Song_Name]".
¡Estás terminado! Ejecute el programa una vez haciendo clic en el botón 'Ejecutar'. Si no hay errores, ahora puede usarlo con Alexa.
Paso 9: ¡Listo
Para usarlo con Alexa, tendrás que usar los siguientes comandos:
'Alexa, inicia Wayscript'
Una vez que Alexa haya confirmado que se ha lanzado Wayscript, diga:
'Ejecutar [Nombre del programa] con [Nombre de la canción]'
Por ejemplo, mi programa se llama 'Letras de canciones'. Si quiero que Alexa me envíe la letra de Thriller, diré:
'Run Song Lyrics con Thriller'
Recomendado:
Proyecto Gimp con letra / cita: 8 pasos
Lyric / Quote Gimp Project: ¡Hola! ¡Bienvenido a mi primer Instructable EVER! Soy Maya, pero me guío ¿Cómo le va aquí en Instructables? Este Instructable debe completarse con GIMP 2. Nunca probé el primer GIMP, así que no estoy seguro de si contendrá las capacidades requeridas
Máquina de escritura en formato de letra: 5 pasos
Máquina de escritura en formato de letra: esta máquina de escritura en formato de letra podría ayudar a cualquier persona, especialmente a los estudiantes, a resolver su problema sobre la falta de familiaridad con el formato de correo electrónico. Con esta máquina, el usuario podría fácilmente " escribir " el formato de correo electrónico, todo lo que tienen que hacer es completar
Alimentador para gatos de IoT con fotón de partículas integrado con Alexa, SmartThings, IFTTT, hojas de Google: 7 pasos (con imágenes)
Comedero para gatos de IoT con fotón de partículas integrado con Alexa, SmartThings, IFTTT, Google Sheets: La necesidad de un comedero automático para gatos se explica por sí misma. Los gatos (el nombre de nuestro gato es Bella) pueden ser desagradables cuando tienen hambre y si tu gato es como el mío, comerá el cuenco seco cada vez. Necesitaba una forma de dispensar una cantidad controlada de comida automáticamente
HC - 06 (Módulo esclavo) Cambio de "NOMBRE" sin uso "Monitorear Arduino serial" que "Funciona fácilmente": ¡Manera impecable!: 3 pasos
HC - 06 (Módulo esclavo) Cambiando "NOMBRE" sin usar "Monitor Serial Arduino" … que "Funciona fácilmente": ¡Manera impecable!: Después de " Mucho tiempo " intentando cambiar el nombre en HC - 06 (módulo esclavo), utilizando " monitor serial del Arduino, sin " Éxito ", encontré otra manera fácil y ahora estoy compartiendo! ¡Que se diviertan amigos
Eliminar la letra de la mayoría de las canciones: 6 pasos (con imágenes)
Eliminar las letras de la mayoría de las canciones: esto le enseñará cómo eliminar las voces de casi cualquier canción. Esto es genial para hacer tu propia canción de Karaoke. Ahora, antes de comenzar, quiero que sepas que esto no eliminará por completo al cantante, pero hará un buen trabajo, así que vale la pena