Indholdsfortegnelse:

"Alexa, Send mig teksten til _____": 9 trin (med billeder)
"Alexa, Send mig teksten til _____": 9 trin (med billeder)

Video: "Alexa, Send mig teksten til _____": 9 trin (med billeder)

Video:
Video: 💦Blackview BV9200 ЧЕСТНЫЙ ОБЗОР ПРОТИВОУДАРНОГО 2024, Juli
Anonim
Image
Image

Lytter du til en sang, du vil synge sammen med? Du skulle normalt gå igennem den hårde opgave med at indtaste sangens navn i google efterfulgt af ordet "tekst". Du vil normalt også lave en rigelig mængde stavefejl, klikke et bestemt antal nøgler forkert og skulle håndtere din enheds uundgåelige forsinkelse. Når du har fundet tekster, finder du ud af, at din sang er slut, og alt det arbejde var for ingenting.

Måske er du midt i en global pandemi, og låne din vens telefon virker ikke som den største idé, meget mindre rørende ved at Karaoke -maskine gemt i hjørnet. Du vil gerne beskyttes, men at kende sangteksten er næsten lige så vigtigt. Du har brug for en bekvem, kontaktløs metode til at søge efter tekster.

Måske er begge disse scenarier små overdrivelser (den første helt sikkert mere), men alligevel ville det bestemt være ganske bekvemt at have sangtekster sendt direkte til din e -mail, den anden du beder om, at de skulle sendes. Det er her denne Instructable (sammen med Alexa, Wayscript og en smule Python) kommer ind. Spørg bare Alexa om teksten til din yndlingssang, og om få sekunder bliver de leveret direkte til din indbakke.

Som gymnasieelev, der gik ind på mit seniorår, har jeg fundet dette projekt til at være ret nyttigt og har faktisk brugt det et betydeligt beløb, siden jeg havde bygget det (en sjældenhed - i betragtning af at de fleste af mine projekter findes uberørte måneder senere).

Denne vejledning er temmelig begynderniveau, men det er nyttigt at kende noget Python, før du går ind.

Forbrugsvarer

Materialer:

  1. Amazon Echo/Enhver Alexa-baseret smart højttaler
  2. WayScript-konto (bliver oprettet i følgende trin)
  3. RapidAPI -konto
  4. Noget Python -viden (ikke nødvendigt, men nyttigt)

Trin 1: Konfigurer Wayscript og Alexa

Opsæt Wayscript og Alexa
Opsæt Wayscript og Alexa
Opsæt Wayscript og Alexa
Opsæt Wayscript og Alexa
Opsæt Wayscript og Alexa
Opsæt Wayscript og Alexa

Hvad er Wayscript?

Wayscript er et kraftfuldt værktøj, der giver dig mulighed for at køre programmer ved hjælp af forskellige udløsere. Vi bruger Alexa -udløseren i denne Instructable, men du er velkommen til at eksperimentere/udforske softwaren - der er alle mulige funktioner, du kan tilføje.

Lad os først starte med en konto med Wayscript:

  1. Klik på knapperne 'Kom godt i gang gratis' eller 'Tilmeld dig'. Jeg brugte indstillingen 'Registrer med Github', da det føltes mest bekvemt.
  2. Når du har oprettet en konto, ledes du til Wayscripts udviklingsmiljø. Det er nyttigt at gå igennem selvstudiet, inden vi starter.
  3. Når du har gennemført selvstudiet, skal du navigere til din profil. Klik på knappen 'Opret et nyt script', og du bliver bedt om at navngive dit projekt. Jeg har kaldt det 'Song Lyrics', men du kan navngive det, hvad du vil. Bare sørg for, at det er let at sige, da du vil bruge programnavnet, når du beder Alexa om at sende dig teksterne.
  4. Når du har lavet dit navn, skal du klikke på knappen 'Opret', og du vil blive ført til et nyt Wayscript -udviklingsmiljø. Vi vender snart tilbage til dette.

Inden vi fortsætter, lad os forbinde din Wayscript -konto til Alexa:

  1. Gå videre til amazon.com og log ind på din konto-specifikt den der er forbundet til din Alexa-aktiverede højttaler.
  2. Gå til dette link: https://www.amazon.com/WayScript-Inc/dp/B07QXXG32… og klik på 'aktiver'. Hvis linket ikke virker af en eller anden grund, skal du søge efter Wayscript Alexa Skill - klik igen på 'aktiver'
  3. Når du har klikket på aktiver, skal du linke den til din Wayscript -konto. Klik på 'Link konto', og du skal ledes til vejskrifts websted. Når du har logget ind, vises en skærm, der siger 'Din konto er blevet linket med succes'.

Når du har konfigureret alt dette, kan vi (næsten) begynde at programmere!

Trin 2: Opret en RapidAPI -konto

Opret en RapidAPI -konto
Opret en RapidAPI -konto
Opret en RapidAPI -konto
Opret en RapidAPI -konto
Opret en RapidAPI -konto
Opret en RapidAPI -konto

For at søge efter sangens tekster bruger vi 'Canarado Lyrics API', som er tilgængelig via RapidAPI. Hvis du allerede har en RapidAPI -konto, kan du springe dette trin over, men hvis ikke, skal du fortsætte med at læse.

Start med at oprette din RapidAPI -konto:

  1. Klik på knappen 'Tilmeld dig' i øverste højre hjørne, og tilmeld dig med en af de muligheder, de har (Google, Github, Facebook eller almindelig tilmelding).
  2. Når du har tilmeldt dig, skal du gå videre til Canarado Lyrics API:

Hvis du ser en skærm, der ligner det tredje billede vedhæftet ovenfor, har du gennemført dette trin. Vi er endelig klar til at begynde at programmere.

Trin 3: Skriv et grundlæggende program

Skriv et grundlæggende program
Skriv et grundlæggende program
Skriv et grundlæggende program
Skriv et grundlæggende program
Skriv et grundlæggende program
Skriv et grundlæggende program

Som nævnt i det foregående trin er Canarado Lyrics API placeret på:

Når du er der, skal du gå til højre halvdel af skærmen med overskriften 'Code Snippets'. Jeg bruger Python i dette instruerbare, men hvis du foretrækker et andet sprog, skal du fortsætte og bruge det i stedet.

Klik på rullemenuen med etiketten '(Node.js) Unrest', og naviger til dit valgte sprog. Igen vil jeg bruge Python - specifikt Python (Requests) - da dette program kræver en anmodning til API'ens vært for de fleste oplysninger. Kopier koden ved at klikke på knappen 'kopier kode' øverst til højre. Indsæt denne kode i din valgfri kode -editor - jeg bruger Jupyters Notebook -miljø.

Når du har indsat programmet, skal du importere Pythons json -modul. Dette vil gøre det muligt for os at udskrive teksten. Tilføj følgende kode nær toppen (under importanmodninger)

import json

Når du har importeret json -modulet, skal dit program se sådan ud:

importanmodninger

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)

Sørg for, at dit program ligner (med en anden API -nøgle), og gå derefter over til 'url' -variablen. Du vil bemærke, at Canarados standardparameter er 'Zenith' af Denzel Curry. Du kan ændre det ved at indtaste en sang, du kan lide. For eksempel, hvis jeg ønskede at søge efter tekstinformation om Michael Jacksons Thriller, kan jeg indtaste "thriller" i stedet for "zenith denzel curry", sådan at url nu ser ud:

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

Du kan også tilføje mellemrum uden tøven - browseren tilføjer automatisk %2520 tegn (du vil bemærke dem i stedet for mellemrum i standardwebadressen). For eksempel kan en søgning efter Gangstas Paradise se sådan ud:

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

Kør programmet ved at erstatte standardværdien "zenith%2520denzel%2520curry" med enhver sang efter eget valg. Du vil bemærke, at teksterne er udskrevet, men på en svær at læse måde. Hvad mere er - andre oplysninger, herunder sangens udgivelsesdato, titel og API's statusoplysninger forhindrer visningen af teksterne. Lad os rette dette i det næste trin.

Trin 4: Formatering af teksten

Formatering af teksten
Formatering af teksten

Formatering af teksterne, så de er læsbare, er ikke for svært. De fleste mennesker med en vis viden om programmering vil være i stand til at gøre dette ret let. I stedet for blot at udskrive "response.text", lad os bruge metoden.json (). Dette vil organisere API'ens oplysninger i en ordbog og gøre alt meget mere tilgængeligt.

For at begynde skal du oprette en variabel til at holde 'response.json ()'. Jeg har navngivet min variabel 'data'.

data = response.json ()

Brug derefter følgende 'for' -loop for at få adgang til teksterne.

for i in data ['indhold']:

print (i ['lyrics'])

Ovenstående kode navigerer til dataordbogens 'indhold' -tast. Inden for indholdstasten giver for -loop dig mulighed for at navigere til 'lyrics' -tasten. Koden skal nu ligne denne:

importanmodninger

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'])

Kør dette program, og du vil bemærke, at teksterne er meget mere læsbare. I det næste trin tilføjer vi et par ekstra variabler, så vi kan bruge en sangs titel som input, og så vi kan sende teksten til Alexa.

Trin 5: Input og output

Input og output
Input og output
Input og output
Input og output

Indtil videre har vi indtastet sangens titel i slutningen af webadressen. Det ville være rart, hvis vi kunne bruge en variabel fra et input og sammenkoble de to strenge (url og sangtitel). Det er faktisk ret let at gøre det.

Lad os foreløbig bruge Pythons inputfunktion. Når vi uploader koden til Wayscript, bruger vi i stedet vores tale som input. Lad os oprette en sangtitelvariabel sat til et input, der beder brugeren om at "indtaste en sangtitel":

song_title = input ("Indtast en sang for at finde teksten til:")

Derefter sammenkædes denne streng til url'en ved hjælp af Pythons '+' - operator for strenge

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

Når du nu kører programmet, behøver du ikke længere at redigere webadressen i programmet. I stedet skal du blot svare på input med din sangs titel, og sangens tekster skal udskrives.

Dit program skal nu se sådan ud:

importanmodninger

import json song = input ("Enter a song to find the lyrics for:") 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 = requests.request ("GET", url, headers = headers) data = respons.json () for i in data ['indhold']: print (i ['tekst'])

Lad os endelig oprette en variabel for at sende teksterne. Start med at oprette et variabelsæt til en tom streng. Derefter sammenkædes 'i [' tekster ']' til slutningen af det. Udskriv variablen uden for for -løkken.

sangtekster = ""

for i in data ['indhold']: sangtekster += i ['tekster'] print (sangtekster)

Det endelige program skal se sådan ud:

importanmodninger

import json song = input ("Enter a song to find the lyrics for:") 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 = requests.request ("GET", url, headers = headers) data = respons.json () lyrics = "" for i in data ['content']: lyrics += i ['lyrics'] print (lyrics)

Programmet udskriver nøjagtig det samme, men nu har du en variabel, som du kan bruge som output. Nu kan vi endelig tilføje Alexa- og e -mail -funktionaliteten med Wayscript.

Trin 6: Tilføjelse af Alexa Trigger

Tilføjelse af Alexa Trigger
Tilføjelse af Alexa Trigger
Tilføjelse af Alexa Trigger
Tilføjelse af Alexa Trigger
Tilføjelse af Alexa Trigger
Tilføjelse af Alexa Trigger

For at tilføje din første trigger skal du klikke på knappen 'Tilføj udløser':

  1. Der vises en søgelinje - søg efter 'Alexa', og du vil bemærke Alexa -udløseren. Hvis du ikke har brugt Alexa -udløseren før dette, eller hvis dette er dit første projekt, skal du muligvis klikke på 'import'. Når den er importeret, skal du blot klikke på den, og den skal tilføjes.
  2. Aktiver udløseren ved at klikke på den pilleformede kontakt. Det skal blive grønt. På venstre side vil du bemærke et afsnit, der siger 'Outputs'. Klik på afkrydsningsfeltet, der siger 'Talt input', og indtast en værdi, der ligner vores tidligere song_title -variabel. Vi kan nu bruge dit talte input i stedet for den input -erklæring, vi tidligere havde brugt
  3. Sørg for, at du har skrevet en standardværdi (dine yndlingssange måske), da du uden nogle kan støde på et par fejl.

I de næste trin tilføjer vi vores Python -program, Send e -mail -metoden, og vi får Alexa til at bekræfte, at metoden er fuldført.

Trin 7: Tilføjelse af dit Python -program

Tilføjelse af dit Python -program
Tilføjelse af dit Python -program
Tilføjelse af dit Python -program
Tilføjelse af dit Python -program
Tilføjelse af dit Python -program
Tilføjelse af dit Python -program
Tilføjelse af dit Python -program
Tilføjelse af dit Python -program

For at tilføje dit program til dit nuværende Wayscript -flow skal du klikke på 'Tilføj trin'

  1. Søg efter Python, og klik på Python -handlingen. Dette bør opdatere udløseren, og du vil bemærke, at en fane til venstre vises.
  2. Hold musen over programmet på sidepanelet, og du vil bemærke, at knappen 'Rediger kode' dukker op. Klik på den, og en fuldskærmsredaktør vil dukke op.
  3. I editoren på fuld skærm skal du kopiere og indsætte det python-program, vi tidligere havde oprettet.
  4. Slet variablen song_title = input ("…."), vi havde skrevet, og tilføj variablen for talte input, vi oprettede i det foregående trin. Variabler oprettet i de foregående trin findes i nederste venstre hjørne.
  5. Dit nye program skal ligne det 6. billede, der er vedhæftet ovenfor.
  6. Endelig vil vi indstille vores sangtekstvariabel som et output. For at gøre dette skal du kopiere og indsætte følgende kode i bunden af dit program (enten under eller i stedet for udskriftserklæringen)

variabler ['Song_Lyrics'] = sangtekster

Dette skaber en outputvariabel kaldet Song_Lyrics og sætter den lig med variablen 'lyrics', vi havde oprettet før. Dit endelige program skal ligne det sidste billede vedhæftet ovenfor. Kør koden bare én gang - så Wayscript ved, hvad der foregår og kan oprette dine outputvariabler. Dette kan tage et øjeblik, men hvis det tager for lang tid, skal du muligvis genindlæse siden. Wayscript indeholder nogle få fejl, så det værste tilfælde kan indebære at skulle genskabe scriptet.

Trin 8: Send teksten og bekræft med Alexa

Send teksten og bekræft med Alexa
Send teksten og bekræft med Alexa
Send teksten og bekræft med Alexa
Send teksten og bekræft med Alexa
Send teksten og bekræft med Alexa
Send teksten og bekræft med Alexa

Vi har yderligere to trin at tilføje til vores WayScript -flow - et trin, der giver dig mulighed for at sende en e -mail til dig selv og en anden, der bekræfter, at en e -mail er blevet sendt. Lad os begynde med at oprette e -mail -trin.

  1. Klik på 'Tilføj trin', søg efter 'Send e-mail', og find fanen i venstre side
  2. Brug variabler oprettet i de foregående trin som 'Song_Name' (eller Song_Title) og 'Song_Lyrics'
  3. Du kan formatere e -mailen, uanset hvad du ønsker. For eksempel har jeg tilføjet ordet "Lyrics" efter variablen "Song_Name" og har tilføjet sætningen "Her er teksten til den sang, du bad om" nær toppen.

Dette script sender en besked til den e -mail, du havde registreret med. Hvis du gerne vil sende det til en anden e -mail, skal du muligvis bruge SMTP -e -mailhandlingen i stedet.

Lad os endelig bekræfte, at e -mailen er blevet sendt med Alexa.

  1. Klik på 'Tilføj trin', og søg efter 'Alexa' igen. Tilføj Alexa -handlingen.
  2. Jeg har konfigureret den, så når e -mailen er sendt, siger Alexa 'Tekster til [Song_Name] er blevet sendt'

Du er færdig! Kør programmet en gang ved at klikke på knappen 'Kør'. Hvis der ikke er fejl, kan du nu bruge det med Alexa.

Trin 9: Du er færdig

For at bruge det med Alexa skal du bruge følgende kommandoer:

'Alexa, start Wayscript'

Når Alexa har bekræftet, at Wayscript er blevet lanceret, skal du sige:

'Kør [programnavn] med [sangnavn]'

For eksempel hedder mit program 'Song Lyrics' - Hvis jeg vil have Alexa til at sende mig teksten til Thriller, siger jeg:

'Kør sangtekster med thriller'

Anbefalede: