Sisällysluettelo:

"Alexa, lähetä minulle sanat _____": 9 vaihetta (kuvilla)
"Alexa, lähetä minulle sanat _____": 9 vaihetta (kuvilla)

Video: "Alexa, lähetä minulle sanat _____": 9 vaihetta (kuvilla)

Video:
Video: ПРИВОЗ. ОДЕССА МАМА. Рецепт САЛО. ОБЗОР НОЖЕЙ 2024, Marraskuu
Anonim
Image
Image

Kuunteletko kappaletta, jonka haluat laulaa yhdessä? Tavallisesti sinun on käytävä läpi vaikea tehtävä kirjoittaa kappaleen nimi Googleen ja sen jälkeen sana "lyrics". Teet myös tavallisesti runsaasti kirjoitusvirheitä, napsautat väärin tiettyä määrää näppäimiä ja joudut käsittelemään laitteen väistämätöntä viivästystä. Kun olet löytänyt sanoitukset, huomaat, että kappaleesi on ohi ja kaikki työ oli turhaa.

Ehkä olet keskellä maailmanlaajuista pandemiaa ja ystäväsi puhelimen lainaaminen ei vaikuta parhaalta idealta, vielä vähemmän koskettavalta kuin nurkkaan sijoitettu karaokelaite. Haluat olla suojattu, mutta laulun sanojen tunteminen on melkein yhtä tärkeää. Tarvitset kätevän, kontaktittoman tavan etsiä sanoituksia.

Ehkä molemmat skenaariot ovat pieniä liioitteluja (ensimmäinen ehdottomasti enemmän), mutta silti, jos kappaleiden sanoitukset lähetetään suoraan sähköpostiisi, kun pyydät niiden lähettämistä, olisi varmasti kätevää. Siellä tämä Instructable (yhdessä Alexan, Wayscriptin ja pienen Pythonin kanssa) tulee sisään. Pyydä Alexalta suosikkikappaleesi sanat ja muutaman sekunnin kuluttua ne toimitetaan suoraan postilaatikkoosi.

Lukion oppilaana menemällä yläasteelleni olen huomannut tämän projektin olevan varsin hyödyllinen ja olen itse asiassa käyttänyt sitä huomattavan määrän sen rakentamisen jälkeen (harvinaisuus - kun otetaan huomioon, että useimmat projektini löytyvät koskemattomina kuukausia myöhemmin).

Tämä opetusohjelma on melko aloittelijatasolla, mutta on hyödyllistä tietää Python ennen kuin aloitat.

Tarvikkeet

Materiaalit:

  1. Amazon Echo/mikä tahansa Alexa-pohjainen älykäs kaiutin
  2. WayScript-tili (määritetään seuraavissa vaiheissa)
  3. RapidAPI -tili
  4. Jotkut Python -tiedot (ei välttämätöntä, mutta hyödyllistä)

Vaihe 1: Määritä Wayscript ja Alexa

Määritä Wayscript ja Alexa
Määritä Wayscript ja Alexa
Määritä Wayscript ja Alexa
Määritä Wayscript ja Alexa
Määritä Wayscript ja Alexa
Määritä Wayscript ja Alexa

Mikä on Wayscript?

Wayscript on tehokas työkalu, jonka avulla voit suorittaa ohjelmia käyttämällä erilaisia laukaisimia. Käytämme Alexa -laukaisinta tässä Instructable -ohjelmassa, mutta voit kokeilla/tutkia ohjelmistoa - voit lisätä kaikenlaisia toimintoja.

Aloitetaan luomalla tili Wayscriptillä:

  1. Napsauta "Aloita ilmaiseksi" tai "Rekisteröidy" -painikkeita. Käytin "Rekisteröidy Githubiin" -vaihtoehtoa, koska se tuntui parhaalta.
  2. Kun olet luonut tilin, sinut ohjataan Wayscriptin kehitysympäristöön. On hyödyllistä käydä opetusohjelma läpi ennen kuin aloitamme.
  3. Kun olet suorittanut opetusohjelman, siirry profiiliisi. Napsauta Luo uusi komentosarja -painiketta ja sinua pyydetään nimeämään projektisi. Olen antanut sille nimen `` Song Lyrics '', mutta voit nimetä sen mitä haluat. Varmista vain, että se on helppo sanoa, kun käytät ohjelman nimeä pyytäessäsi Alexaa lähettämään sinulle sanoitukset.
  4. Kun olet kirjoittanut nimesi, napsauta Luo -painiketta ja sinut ohjataan uuteen Wayscript -kehitysympäristöön. Palataan tähän pian.

Ennen kuin jatkamme, yhdistämme Wayscript -tilisi Alexaan:

  1. Siirry osoitteeseen amazon.com ja kirjaudu sisään tilillesi-erityisesti sille, joka on yhdistetty Alexa-yhteensopivaan kaiuttimeesi.
  2. Siirry tähän linkkiin: https://www.amazon.com/WayScript-Inc/dp/B07QXXG32… ja napsauta Ota käyttöön. Jos linkki ei jostain syystä toimi, etsi Wayscript Alexa Skill - napsauta uudelleen 'ota käyttöön'
  3. Kun olet napsauttanut Ota käyttöön, sinun on linkitettävä se Wayscript -tiliisi. Napsauta Linkitä tili ja sinut ohjataan WayScriptin verkkosivustolle. Kun olet kirjautunut sisään, näyttöön tulee viesti "Olet tilisi linkittäminen onnistunut".

Kun olet asettanut kaiken tämän, voimme (melkein) aloittaa ohjelmoinnin!

Vaihe 2: Luo RapidAPI -tili

Luo RapidAPI -tili
Luo RapidAPI -tili
Luo RapidAPI -tili
Luo RapidAPI -tili
Luo RapidAPI -tili
Luo RapidAPI -tili

Jos haluat etsiä kappaleen sanoja, käytämme Canarado Lyrics -sovellusliittymää, joka on käytettävissä RapidAPI: n kautta. Jos sinulla on jo RapidAPI -tili, voit ohittaa tämän vaiheen, mutta jos ei, jatka lukemista.

Aloita luomalla RapidAPI -tili:

  1. Napsauta "Rekisteröidy" -painiketta oikean yläkulman lähellä ja rekisteröidy jollakin heidän vaihtoehdoistaan (Google, Github, Facebook tai tavallinen rekisteröityminen).
  2. Kun olet rekisteröitynyt, siirry Canarado Lyrics -sovellusliittymään:

Jos näet yllä olevan kolmannen kuvan kaltaisen näytön, olet suorittanut tämän vaiheen. Olemme vihdoin valmiita aloittamaan ohjelmoinnin.

Vaihe 3: Kirjoita perusohjelma

Kirjoita perusohjelma
Kirjoita perusohjelma
Kirjoita perusohjelma
Kirjoita perusohjelma
Kirjoita perusohjelma
Kirjoita perusohjelma

Kuten edellisessä vaiheessa mainittiin, Canarado Lyrics -sovellusliittymä sijaitsee osoitteessa

Kun olet siellä, siirry näytön oikealle puolelle otsikolla 'Koodinpätkät'. Käytän Pythonia tässä ohjeessa, mutta jos haluat toisen kielen, käytä sitä sen sijaan.

Napsauta avattavaa valikkoa, jonka otsikko on '(Node.js) Unrest', ja siirry haluamasi kielen kohdalle. Käytän jälleen Pythonia - erityisesti Pythonia (Requests) - koska tämä ohjelma vaatii pyynnön API: n isännältä suurimmalle osalle tiedoista. Kopioi koodi napsauttamalla oikeassa yläkulmassa olevaa "kopioi koodi" -painiketta. Liitä tämä koodi valitsemallesi koodieditorille - käytän Jupyterin Notebook -ympäristöä.

Kun olet liittänyt ohjelman, tuo Pythonin json -moduuli. Näin voimme tulostaa sanoitukset. Lisää seuraava koodi yläreunan viereen (tuontipyyntöjen alapuolelle)

tuo json

Kun olet tuonut json -moduulin, ohjelman pitäisi näyttää tältä:

tuontipyynnöt

Tuo 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)

Varmista, että ohjelmasi näyttää samalta (eri sovellusliittymäavaimella), ja siirry sitten 'url' -muuttujaan. Huomaat, että Canaradon oletusparametri on Denzel Curryn Zenith. Voit muuttaa sitä syöttämällä haluamasi kappaleen. Jos esimerkiksi halusin etsiä Michael Jacksonin trilleriin liittyvää sanoitustietoa, voin kirjoittaa "trilleri" "zenith denzel curryn" tilalle siten, että URL -osoite näyttää nyt tältä:

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

Voit myös lisätä välilyöntejä epäröimättä - selain lisää automaattisesti %2520 merkkiä (huomaat ne oletus -URL -osoitteen välilyönnien sijaan). Esimerkiksi Gangstas Paradise -haku voi näyttää tältä:

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

Suorita ohjelma korvaamalla oletusarvo "zenith%2520denzel%2520curry" haluamallasi kappaleella. Huomaat, että sanoitukset on tulostettu, mutta vaikeasti luettavalla tavalla. Lisäksi muut tiedot, kuten kappaleen julkaisupäivä, nimi ja sovellusliittymän tilatiedot, estävät sanoitusten näkymisen. Korjataan tämä seuraavassa vaiheessa.

Vaihe 4: Sanoitusten muotoilu

Sanoitusten muotoilu
Sanoitusten muotoilu

Sanoitusten muotoileminen luettaviksi ei ole liian vaikeaa. Useimmat ihmiset, joilla on jonkin verran tietoa ohjelmoinnista, voivat tehdä tämän melko helposti. Sen sijaan, että tulostettaisiin vain "response.text", käytämme.json () -menetelmää. Tämä järjestää sovellusliittymän tiedot sanakirjaksi ja tekee kaikesta paljon helpommin saatavilla.

Aloita luomalla muuttuja, joka pitää sisällään 'response.json ()'. Olen nimittänyt muuttujan 'dataksi'.

data = response.json ()

Käytä seuraavaksi "for" -silmukkaa päästäksesi sanoituksiin.

i: lle datassa ['sisältö']:

tulosta (i ['lyrics'])

Yllä oleva koodi siirtyy tietosanakirjan sisältöavaimeen. Sisältöavaimen sisällä for -silmukan avulla voit siirtyä lyrics -näppäimeen. Koodin pitäisi nyt näyttää tältä:

tuontipyynnöt

Tuo 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 () i in data ['content']: tulosta (i ['lyrics'])

Suorita tämä ohjelma ja huomaat, että sanoitukset ovat paljon luettavampia. Seuraavassa vaiheessa lisäämme muutamia ylimääräisiä muuttujia, jotta voimme käyttää kappaleen nimeä syötteenä ja jotta voimme lähettää sanat Alexalle.

Vaihe 5: Tulot ja lähdöt

Tulot ja lähdöt
Tulot ja lähdöt
Tulot ja lähdöt
Tulot ja lähdöt

Tähän mennessä olemme kirjoittaneet kappaleen nimen URL -osoitteen loppuun. Olisi hienoa, jos voisimme käyttää muuttujaa syötteestä ja yhdistää kaksi merkkijonoa (URL -osoite ja kappaleen nimi). Sen tekeminen on itse asiassa aika helppoa.

Käytämme toistaiseksi Pythonin syöttötoimintoa. Kun olemme ladanneet koodin Wayscriptiin, käytämme puheemme tulona. Luodaan kappaleen otsikon muuttuja, joka on asetettu tuloon, joka pyytää käyttäjää "syöttämään kappaleen nimen":

song_title = input ("Kirjoita kappale löytääksesi sanat:")

Yhdistä sitten tämä merkkijono URL -osoitteeseen käyttämällä Pythonin+-operaattoria merkkijonoille

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

Nyt kun suoritat ohjelman, sinun ei enää tarvitse muokata ohjelman URL -osoitetta. Vastaa sen sijaan syötteeseen kappaleesi nimellä, ja kappaleen sanat tulee tulostaa.

Ohjelmasi pitäisi nyt näyttää tältä:

tuontipyynnöt

tuo json song = input ("Kirjoita kappale löytääksesi sanat:") url = "https://canarado-lyrics.p.rapidapi.com/lyrics/" + kappaleen otsikot = {'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'])

Lopuksi luodaan muuttuja, joka tuottaa sanoitukset. Aloita luomalla muuttujajoukko tyhjäksi merkkijonoksi. Yhdistä sitten 'i [' lyrics ']' sen loppuun. Tulosta muuttuja for -silmukan ulkopuolelle.

sanat = ""

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

Lopullisen ohjelman pitäisi näyttää tältä:

tuontipyynnöt

tuo json song = input ("Kirjoita kappale löytääksesi sanat:") url = "https://canarado-lyrics.p.rapidapi.com/lyrics/" + kappaleen otsikot = {'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)

Ohjelma tulostaa täsmälleen saman asian, mutta nyt sinulla on muuttuja, jota voit käyttää tulosteena. Nyt voimme vihdoin lisätä Alexa- ja sähköpostitoiminnot Wayscriptiin.

Vaihe 6: Alexa -liipaisimen lisääminen

Alexa -liipaisimen lisääminen
Alexa -liipaisimen lisääminen
Alexa -liipaisimen lisääminen
Alexa -liipaisimen lisääminen
Alexa -liipaisimen lisääminen
Alexa -liipaisimen lisääminen

Voit lisätä ensimmäisen liipaisimesi napsauttamalla Lisää liipaisin -painiketta:

  1. Näkyviin tulee hakupalkki - etsi "Alexa" ja huomaat Alexa -laukaisimen. Jos et ole käyttänyt Alexa -laukaisinta ennen tätä, tai jos tämä on ensimmäinen projektisi, sinun on ehkä napsautettava Tuo. Kun se on tuotu, napsauta sitä ja se on lisättävä.
  2. Ota liipaisin käyttöön napsauttamalla pillerin muotoista kytkintä. Sen pitäisi muuttua vihreäksi. Vasemmalla puolella näet osan, jossa lukee 'Lähdöt'. Napsauta valintaruutua, jossa lukee 'Puhuttu syöttö', ja syötä arvo, joka on samanlainen kuin edellinen song_title -muuttuja. Voimme nyt käyttää puhetta aiemmin syöttämäsi lausekkeen sijasta
  3. Varmista, että olet kirjoittanut oletusarvon (ehkä suosikkikappaleesi), koska ilman sitä saatat kohdata muutamia virheitä.

Seuraavissa vaiheissa lisäämme Python -ohjelmamme, Lähetä sähköposti -menetelmän ja Alexa vahvistaa, että menetelmä on valmis.

Vaihe 7: Python -ohjelman lisääminen

Python -ohjelman lisääminen
Python -ohjelman lisääminen
Python -ohjelman lisääminen
Python -ohjelman lisääminen
Python -ohjelman lisääminen
Python -ohjelman lisääminen
Python -ohjelman lisääminen
Python -ohjelman lisääminen

Jos haluat lisätä ohjelmasi nykyiseen Wayscript -kulkuun, napsauta Lisää vaihe

  1. Etsi Python ja napsauta Python -toimintoa. Tämän pitäisi päivittää liipaisin ja huomaat vasemmanpuoleisen välilehden.
  2. Vie hiiri sivupaneelin ohjelman päälle ja huomaat Muokkaa koodia -painikkeen. Napsauta sitä ja koko näytön editori avautuu.
  3. Kopioi ja liitä koko näytön editorissa aiemmin luomamme python-ohjelma.
  4. Poista song_title = input ("….") Muuttuja, jonka olimme kirjoittaneet, ja lisää puhuttu tulomuuttuja, jonka loimme edellisessä vaiheessa. Edellisissä vaiheissa luodut muuttujat löytyvät vasemmasta alakulmasta.
  5. Uuden ohjelman pitäisi näyttää samalta kuin yllä oleva kuudes kuva.
  6. Lopuksi haluamme asettaa sanamuuttujamme tulosteeksi. Kopioi ja liitä seuraava koodi ohjelman alareunaan (joko tulostuslauseen alle tai tilalle)

muuttujat ['Song_Lyrics'] = sanoitukset

Tämä luo lähtömuuttujan nimeltä Song_Lyrics ja asettaa sen samaksi kuin aiemmin luomaamme sanamuuttuja. Lopullisen ohjelman pitäisi näyttää samalta kuin viimeinen yllä oleva kuva. Suorita koodi vain kerran - jotta Wayscript tietää mitä tapahtuu ja voi luoda tulosmuuttujat. Tämä voi kestää hetken, mutta jos se kestää liian kauan, sinun on ehkä ladattava sivu uudelleen. Wayscript sisältää muutamia bugeja, joten pahimmassa tapauksessa skripti voidaan luoda uudelleen.

Vaihe 8: Lähetä sanat ja vahvista Alexan kanssa

Lähetä sanat ja vahvista Alexan kanssa
Lähetä sanat ja vahvista Alexan kanssa
Lähetä sanat ja vahvista Alexan kanssa
Lähetä sanat ja vahvista Alexan kanssa
Lähetä sanat ja vahvista Alexan kanssa
Lähetä sanat ja vahvista Alexan kanssa

Meillä on kaksi lisävaihetta lisättäväksi WayScript -kulkuumme - vaihe, jonka avulla voit lähettää sähköpostin itsellesi ja toinen, joka vahvistaa sähköpostin lähettämisen. Aloitetaan luomalla sähköpostivaihe.

  1. Napsauta Lisää vaihe, etsi Lähetä sähköposti ja etsi vasen välilehti
  2. Käytä edellisissä vaiheissa luotuja muuttujia, kuten kappaleen_nimi (tai kappaleen_nimi) ja kappaleen sanat
  3. Voit muotoilla sähköpostin haluamallasi tavalla. Olen esimerkiksi lisännyt sanan "Lyrics" "Song_Name" -muuttujan perään ja lauseen "Tässä on sanat pyytämääsi kappaleeseen" lähellä.

Tämä skripti lähettää viestin siihen sähköpostiosoitteeseen, johon olet rekisteröitynyt. Jos haluat lähettää sen toiseen sähköpostiosoitteeseen, sinun on ehkä käytettävä sen sijaan SMTP -sähköpostitoimintoa.

Vahvista lopuksi, että sähköposti on lähetetty Alexan kanssa.

  1. Napsauta Lisää vaihe ja etsi uudelleen Alexa. Lisää Alexa -toiminto.
  2. Olen määrittänyt sen niin, että kun sähköposti on lähetetty, Alexa sanoo: "Lyrics for [Song_Name] is sent sent"

Olet valmis! Suorita ohjelma kerran napsauttamalla Suorita -painiketta. Jos virheitä ei ole, voit nyt käyttää sitä Alexan kanssa.

Vaihe 9: Olet valmis

Jotta voit käyttää sitä Alexan kanssa, sinun on käytettävä seuraavia komentoja:

"Alexa, käynnistä Wayscript"

Kun Alexa on vahvistanut, että Wayscript on julkaistu, sano:

'Suorita [Ohjelman nimi] ja [Kappaleen nimi]'

Esimerkiksi ohjelmani on nimeltään 'Song Lyrics' - Jos haluan, että Alexa lähettää minulle sanat Thrillerille, sanon:

'Run Song Lyrics with Thriller'

Suositeltava: