Sadržaj:

"Alexa, pošalji mi tekst pjesme _____": 9 koraka (sa slikama)
"Alexa, pošalji mi tekst pjesme _____": 9 koraka (sa slikama)

Video: "Alexa, pošalji mi tekst pjesme _____": 9 koraka (sa slikama)

Video:
Video: Праздник. Новогодняя комедия 2024, Novembar
Anonim
Image
Image

Slušate li pjesmu uz koju želite pjevati? Obično biste morali proći kroz naporan zadatak ukucavanja imena pjesme u google, nakon čega slijedi riječ "tekst". Također biste obično napravili veliku količinu pravopisnih pogrešaka, pogrešno pritisnuli određenu količinu ključeva i morali biste se nositi s neizbježnim zaostajanjem uređaja. Dok nađete tekst, otkrijete da je vaša pjesma gotova i da je sav taj posao bio uzaludan.

Možda ste usred globalne pandemije i posuđivanje telefona vašeg prijatelja ne izgleda kao najbolja ideja, a još manje dirljivo što je Karaoke Machine ušuškana u kut. Želite biti zaštićeni, ali poznavanje teksta pjesme je gotovo jednako važno. Potrebna vam je prikladna, beskontaktna metoda za traženje tekstova.

Možda su oba ova scenarija mala pretjerivanja (prvi je definitivno više), ali ipak, slanje tekstova pjesama na vašu e -poštu čim zatražite njihovo slanje bilo bi sasvim zgodno. Tu dolazi ovaj Instructable (zajedno s Alexa -om, Wayscript -om i malo Pythona). Samo zamolite Alexa za tekst vaše omiljene pjesme i za nekoliko sekundi će vam biti isporučeni u pristiglu poštu.

Kao srednjoškolac koji je išao na završnu godinu, otkrio sam da je ovaj projekt prilično koristan i da sam ga zapravo iskoristio znatnu količinu otkad sam ga izgradio (rijetkost - s obzirom na to da se većina mojih projekata nađe netaknuta mjesecima kasnije).

Ovaj vodič je na početnom nivou, ali bi bilo korisno znati nekoliko Pythona prije nego što krenete.

Supplies

Materijali:

  1. Amazon Echo/Bilo koji pametni zvučnik zasnovan na Alexa
  2. WayScript račun (bit će postavljen u sljedećim koracima)
  3. RapidAPI račun
  4. Nekoliko znanja o Pythonu (nije potrebno, ali je od pomoći)

Korak 1: Postavite Wayscript i Alexa

Postavite Wayscript i Alexa
Postavite Wayscript i Alexa
Postavite Wayscript i Alexa
Postavite Wayscript i Alexa
Postavite Wayscript i Alexa
Postavite Wayscript i Alexa

Šta je Wayscript?

Wayscript je moćan alat koji vam omogućuje pokretanje programa pomoću različitih pokretača. U ovom Instructable -u koristit ćemo Alexa okidač, ali slobodno eksperimentirajte/istražite softver - možete dodati razne vrste funkcija.

Za početak, napravimo račun s Wayscript -om:

  1. Kliknite na gumb "Započni besplatno" ili "Registriraj se". Koristio sam opciju 'Registriraj se na Githubu' jer mi se to činilo najpogodnijim.
  2. Nakon što otvorite račun, bit ćete preusmjereni u razvojno okruženje Wayscripta. Korisno je proći kroz vodič prije nego počnemo.
  3. Kada završite vodič, idite na svoj profil. Kliknite na dugme „Kreiraj novu skriptu“i od vas će se tražiti da imenujete svoj projekat. Nazvao sam je 'Tekst pjesme', ali možete je nazvati kako god želite. Samo osigurajte da je to lako reći jer ćete koristiti naziv programa kada tražite od Alexa da vam pošalje stihove.
  4. Nakon što ste napravili svoje ime, kliknite gumb 'kreiraj' i bit ćete preusmjereni u novo razvojno okruženje Wayscript. Uskoro ćemo se vratiti na ovo.

Prije nego nastavimo, povežimo vaš Wayscript račun s Alexa:

  1. Pređite na amazon.com i prijavite se na svoj račun-posebno onaj koji je povezan sa vašim zvučnikom koji podržava Alexa.
  2. Idite na ovu vezu: https://www.amazon.com/WayScript-Inc/dp/B07QXXG32… i kliknite 'omogući'. Ako veza ne radi iz bilo kojeg razloga, potražite Wayscript Alexa vještinu - ponovo kliknite 'omogući'
  3. Nakon što ste kliknuli omogući, morate ga povezati sa svojim Wayscript računom. Kliknite na „Poveži račun“i trebali biste biti odvedeni na web lokaciju wayScript. Nakon što se prijavite, trebao bi se pojaviti ekran sa porukom "Vaš račun je uspješno povezan".

Kad sve ovo postavite, možemo (skoro) započeti programiranje!

Korak 2: Napravite RapidAPI račun

Napravite RapidAPI račun
Napravite RapidAPI račun
Napravite RapidAPI račun
Napravite RapidAPI račun
Napravite RapidAPI račun
Napravite RapidAPI račun

Da bismo tražili tekst pjesme, koristit ćemo 'Canarado Lyrics API' koji je dostupan putem RapidAPI -ja. Ako već imate RapidAPI račun, možete preskočiti ovaj korak, ali ako nemate, nastavite čitati.

Počnite tako što ćete stvoriti svoj RapidAPI račun:

  1. Kliknite gumb "Prijava" u gornjem desnom kutu i prijavite se s bilo kojom od opcija koje imaju (Google, Github, Facebook ili obična registracija).
  2. Nakon što se prijavite, prijeđite na Canarado Lyrics API:

Ako vidite ekran sličan trećoj slici priloženoj gore, završili ste ovaj korak. Konačno smo spremni za početak programiranja.

Korak 3: Napišite osnovni program

Napišite osnovni program
Napišite osnovni program
Napišite osnovni program
Napišite osnovni program
Napišite osnovni program
Napišite osnovni program

Kao što je spomenuto u prethodnom koraku, API za Canarado Lyrics nalazi se na:

Kad stignete tamo, krenite na desnu polovicu ekrana sa zaglavljem 'Snippets Code'. Koristit ću Python u ovom uputstvu, ali ako više volite neki drugi jezik, idite umjesto njega i upotrijebite ga.

Kliknite na padajući izbornik s oznakom '(Node.js) Nemiri' i idite na jezik koji odaberete. Opet ću koristiti Python - posebno Python (zahtjevi) - budući da ovaj program za većinu informacija zahtijeva zahtjev domaćinu API -ja. Kopirajte kôd klikom na gumb 'kopiraj kôd' u gornjem desnom kutu. Zalijepite ovaj kod u svoj uređivač koda po izboru - koristit ću Jupyter -ovo okruženje Notebook.

Nakon što zalijepite program, uvezite Pythonov json modul. To će nam omogućiti štampanje tekstova. Dodajte sljedeći kôd pri vrhu (ispod zahtjeva za uvoz)

import json

Nakon što uvezete json modul, vaš program bi trebao izgledati ovako:

uvozni zahtevi

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"} odgovor = requests.request ("GET", url, zaglavlja = zaglavlja) print (response.text)

Uvjerite se da vaš program izgleda slično (s drugim API ključem), a zatim prijeđite na varijablu 'url'. Primijetit ćete da je Canaradoov zadani parametar 'Zenith' Denzela Curryja. To možete promijeniti unošenjem bilo koje pjesme koja vam se sviđa. Na primjer, ako želim tražiti informacije o tekstovima u vezi s trilerom Michaela Jacksona, mogu unijeti "triler" umjesto "zenith denzel curry", tako da url sada izgleda ovako:

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

Možete i dodati razmake bez oklijevanja - preglednik će automatski dodati %2520 znakova (Primijetit ćete ih umjesto razmaka na zadanom URL -u). Na primjer, pretraživanje Gangstas Paradise moglo bi izgledati ovako:

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

Pokrenite program zamjenom zadane vrijednosti "zenith%2520denzel%2520curry" bilo kojom pjesmom po vašem izboru. Primijetit ćete da su stihovi odštampani, ali na teško čitljiv način. Štaviše - druge informacije, uključujući datum objavljivanja pjesme, naslov i statusne informacije API -ja ometaju pregled stihova. Popravimo ovo u sljedećem koraku.

Korak 4: Formatiranje stihova

Formatiranje stihova
Formatiranje stihova

Formatiranje stihova tako da budu čitljivi nije previše teško. Većina ljudi s nekim poznavanjem programiranja to će moći učiniti prilično lako. Umjesto da jednostavno ispišemo "response.text", upotrijebimo.json () metodu. Ovo će organizirati informacije API -ja u rječnik i učiniti sve mnogo pristupačnijim.

Za početak, stvorite varijablu koja će držati 'response.json ()'. Promenljivoj sam dao ime 'data'.

data = response.json ()

Zatim, koristite sljedeću petlju 'for' za pristup tekstovima pjesama.

for i in data ['content']:

print (i ['lyrics'])

Gornji kôd ide do ključa 'sadržaj' rječnika podataka. Unutar ključa sadržaja, for petlja vam omogućava da se krećete do tastera „lyrics“. Kôd bi sada trebao izgledati ovako:

uvozni zahtevi

import json url = "https://canarado-lyrics.p.rapidapi.com/lyrics/YOUR-SONG-HERE" zaglavlja = {'x-rapidapi-host': "canarado-lyrics.p.rapidapi.com", 'x-rapidapi-key': "YOUR-API-KEY-HERE"} odgovor = requests.request ("GET", url, zaglavlja = zaglavlja) data = response.json () za i u podacima ['sadržaj']: print (i ['lyrics'])

Pokrenite ovaj program i primijetit ćete da su tekstovi puno čitljiviji. U sljedećem koraku ćemo dodati nekoliko dodatnih varijabli, tako da možemo koristiti naslov pjesme kao ulaz i kako bismo mogli slati tekst u Alexa.

Korak 5: Ulazi i izlazi

Ulazi i izlazi
Ulazi i izlazi
Ulazi i izlazi
Ulazi i izlazi

Do sada smo upisivali naslov pjesme na kraju URL -a. Bilo bi lijepo kada bismo mogli koristiti varijablu iz ulaza i spojiti dva niza (url i naslov pjesme). To je zapravo prilično lako.

Zasad ćemo koristiti Python -ovu funkciju unosa. Nakon što učitamo kôd u Wayscript, umjesto toga ćemo koristiti govor kao unos. Kreirajmo varijablu naslova pjesme postavljenu na ulaz koja traži od korisnika da "unese naslov pjesme":

song_title = input ("Unesite pjesmu da biste pronašli tekst za:")

Zatim povežite ovaj niz s URL -om, koristeći Pythonov operator '+' za nizove

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

Sada, kada pokrenete program, više ne morate uređivati url unutar programa. Umjesto toga, jednostavno odgovorite na ulaz sa naslovom svoje pjesme, a tekst pjesme treba odštampati.

Vaš program bi sada trebao izgledati ovako:

uvozni zahtevi

import json song = input ("Unesite pjesmu da biste pronašli tekst za:") url = "https://canarado-lyrics.p.rapidapi.com/lyrics/" + zaglavlja pjesme = {'x-rapidapi-host': "canarado-lyrics.p.rapidapi.com", 'x-rapidapi-key': "YOUR-API-KEY-HERE"} odgovor = requests.request ("GET", url, zaglavlja = zaglavlja) data = response.json () for i in data ['content']: print (i ['lyrics'])

Na kraju, kreirajmo varijablu za ispis stihova. Počnite stvaranjem varijable postavljene na prazan niz. Zatim spojite 'i [' lyrics ']' do kraja. Odštampajte promenljivu izvan for petlje.

lyrics = ""

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

Konačni program bi trebao izgledati ovako:

uvozni zahtevi

import json song = input ("Unesite pjesmu da biste pronašli tekst za:") url = "https://canarado-lyrics.p.rapidapi.com/lyrics/" + zaglavlja pjesme = {'x-rapidapi-host': "canarado-lyrics.p.rapidapi.com", 'x-rapidapi-key': "YOUR-API-KEY-HERE"} odgovor = requests.request ("GET", url, zaglavlja = zaglavlja) data = response.json () lyrics = "" for i in data ['content']: lyrics += i ['lyrics'] ispis (tekstovi)

Program će ispisati potpuno istu stvar, ali sada imate varijablu koju možete koristiti kao izlaz. Sada konačno možemo dodati funkciju Alexa i e -poštu s Wayscript -om.

Korak 6: Dodavanje Alexa okidača

Dodavanje Alexa Trigger -a
Dodavanje Alexa Trigger -a
Dodavanje Alexa Trigger -a
Dodavanje Alexa Trigger -a
Dodavanje Alexa Trigger -a
Dodavanje Alexa Trigger -a

Da biste dodali svoj prvi okidač, kliknite gumb 'Dodaj okidač':

  1. Pojavit će se traka za pretraživanje - potražite 'Alexa' i primijetit ćete Alexa okidač. Ako prije toga niste koristili Alexa okidač ili vam je ovo prvi projekt, možda ćete morati kliknuti na „uvoz“. Kada uvezete, jednostavno kliknite na nju i treba je dodati.
  2. Omogućite okidač klikom na prekidač u obliku tablete. Trebao bi postati zelen. Sa lijeve strane primijetit ćete odjeljak koji kaže 'Izlazi'. Kliknite potvrdni okvir na kojem piše 'Spoken Input' i unesite vrijednost sličnu našoj prethodnoj varijabli song_title. Sada možemo koristiti vaš govorni unos umjesto izjave o unosu koju smo ranije koristili
  3. Uvjerite se da ste napisali zadanu vrijednost (možda vaše omiljene pjesme) jer ćete bez nje možda naići na nekoliko grešaka.

U sljedećim koracima dodat ćemo naš Python program, metodu slanja e -pošte, a Alexa ćemo potvrditi da je metoda dovršena.

Korak 7: Dodavanje vašeg Python programa

Dodavanje vašeg Python programa
Dodavanje vašeg Python programa
Dodavanje vašeg Python programa
Dodavanje vašeg Python programa
Dodavanje vašeg Python programa
Dodavanje vašeg Python programa
Dodavanje vašeg Python programa
Dodavanje vašeg Python programa

Da biste dodali svoj program u trenutni tok Wayscript -a, kliknite na 'Dodaj korak'

  1. Potražite Python i kliknite na radnju Python. Ovo bi trebalo osvježiti okidač i primijetit ćete da se pojavljuje kartica s lijeve strane.
  2. Zadržite pokazivač miša iznad programa na bočnoj ploči i primijetit ćete skočno dugme 'Uredi kod'. Kliknite na nju i pojavit će se uređivač na cijelom ekranu.
  3. U uređivaču na cijelom ekranu kopirajte i zalijepite python program koji smo prethodno stvorili.
  4. Izbrišite varijablu song_title = input ("….") Koju smo napisali i dodajte govornu ulaznu varijablu koju smo kreirali u prethodnom koraku. Varijable stvorene u prethodnim koracima mogu se pronaći u donjem lijevom kutu.
  5. Vaš novi program trebao bi izgledati slično 6. slici u prilogu gore.
  6. Konačno, želimo postaviti varijablu teksta kao izlaz. Da biste to učinili, kopirajte i zalijepite sljedeći kôd na dnu programa (ispod ili umjesto ispisa za ispis)

varijable ['Song_Lyrics'] = stihovi

Ovo stvara izlaznu varijablu pod nazivom Song_Lyrics i postavlja je jednaku varijabli 'lyrics' koju smo prethodno stvorili. Vaš konačni program trebao bi izgledati kao posljednja slika priložena gore. Pokrenite kôd samo jednom - tako da Wayscript zna što se događa i može stvoriti vaše izlazne varijable. Ovo može potrajati nekoliko trenutaka, ali ako potraje predugo, možda ćete morati ponovo učitati stranicu. Wayscript sadrži nekoliko grešaka, pa bi najgori mogući scenarij mogao uključivati ponovno stvaranje skripte.

Korak 8: Pošaljite stihove i potvrdite s Alexa

Pošaljite stihove i potvrdite s Alexa
Pošaljite stihove i potvrdite s Alexa
Pošaljite stihove i potvrdite s Alexa
Pošaljite stihove i potvrdite s Alexa
Pošaljite stihove i potvrdite s Alexa
Pošaljite stihove i potvrdite s Alexa

Imamo još dva koraka za dodavanje u naš WayScript tok - korak koji vam omogućava da pošaljete e -poruku sebi i još jedan koji potvrđuje da je e -poruka poslana. Počnimo s kreiranjem koraka e -pošte.

  1. Kliknite 'Dodaj korak', potražite 'Pošalji e-poštu' i pronađite karticu s lijeve strane
  2. Koristite varijable stvorene u prethodnim koracima poput 'Ime_pjesme' (ili Naslov_pjesme) i 'Tekst_pjesme'
  3. E -poštu možete oblikovati kako god želite. Na primjer, dodao sam riječ "Lyrics" nakon varijable "Song_Name" i pri vrhu dodao rečenicu "Evo teksta pjesme koju ste tražili".

Ova skripta će poslati poruku na adresu e -pošte na koju ste se registrirali. Ako ga želite poslati na drugu e -adresu, možda ćete umjesto toga morati koristiti SMTP e -poštu.

Na kraju, potvrdimo da je e -poruka poslana s Alexa.

  1. Pritisnite 'Dodaj korak' i ponovo potražite 'Alexa'. Dodajte radnju Alexa.
  2. Postavio sam ga tako da nakon slanja e -pošte Alexa kaže 'Tekstovi za [Song_Name] su poslani'

Gotovi ste! Pokrenite program jednom klikom na dugme 'Pokreni'. Ako nema grešaka, sada ga možete koristiti s Alexa.

Korak 9: Gotovi ste

Da biste ga mogli koristiti s Alexa, morat ćete koristiti sljedeće naredbe:

'Alexa, lansiraj Wayscript'

Kad Alexa potvrdi da je Wayscript pokrenut, recite:

'Pokrenite [Naziv programa] sa [Naziv pjesme]'

Na primjer, moj program se zove 'Lyrics Song' - Ako želim da mi Alexa pošalje tekst u Thriller, reći ću:

'Pokreni tekstove pjesama uz triler'

Preporučuje se: