Mundarija:

"Alexa, menga matnni _____ ga yubor": 9 qadam (rasmlar bilan)
"Alexa, menga matnni _____ ga yubor": 9 qadam (rasmlar bilan)

Video: "Alexa, menga matnni _____ ga yubor": 9 qadam (rasmlar bilan)

Video:
Video: BİR O'ZİNGİZ KO'RİNG / DUNYODAGİ ENG G'ALATİ ER-XOTİNLAR / Buni Bilasizmi? 2024, Noyabr
Anonim
Image
Image

Siz birga kuylamoqchi bo'lgan qo'shiqni tinglayapsizmi? Siz, odatda, googlega qo'shiq nomini, so'ngra "so'zlar" so'zini yozish kabi mashaqqatli vazifani bajarishingiz kerak bo'ladi. Siz, odatda, juda ko'p xatolar qilasiz, ma'lum miqdordagi kalitlarni noto'g'ri bosasiz va qurilmangizning muqarrar kechikishi bilan shug'ullanishingiz kerak bo'ladi. Siz so'zlarni topganingizda, sizning qo'shiqingiz tugaganini va bu ishlarning barchasi befoyda ekanligini bilib olasiz.

Balki siz global pandemiyaning o'rtasida turibsiz va do'stingizning telefonini qarzga olish, eng yaxshi g'oya kabi ko'rinmaydi, lekin burchakka qo'yilgan Karaoke mashinasiga tegmaydi. Siz himoyalanishni xohlaysiz, lekin qo'shiq so'zlarini bilish deyarli zarur. Matnlarni qidirish uchun sizga qulay, kontaktsiz usul kerak.

Ehtimol, bu ssenariylarning ikkalasi ham biroz bo'rttirma (birinchisi, albatta), lekin baribir, qo'shiq matnlari sizning elektron pochtangizga yuborilgan bo'lsa, ularni yuborishni so'raganingizda, albatta, juda qulay bo'ladi. Bu erda ko'rsatma (Alexa, Wayscript va Python bilan bir qatorda) paydo bo'ladi. Faqat Alexadan sevimli qo'shig'ingizning so'zlarini so'rang va bir necha soniyadan so'ng ular sizning qutingizga yuboriladi.

O'rta maktab o'quvchisi sifatida men birinchi kursda o'qiyotganimda, men bu loyihani juda foydali deb topdim va uni qurganimdan beri katta miqdorda foydalanganman (kamdan -kam hollarda - mening loyihalarimning ko'pchiligi bir necha oy o'tgach tegmagan).

Bu darslik boshlang'ich darajadagi juda yaxshi, lekin kirishdan oldin Python bilan tanishish foydalidir.

Ta'minotlar

Materiallar:

  1. Amazon Echo/Alexa-ga asoslangan har qanday aqlli dinamik
  2. WayScript hisob qaydnomasi (keyingi bosqichlarda o'rnatiladi)
  3. RapidAPI hisob qaydnomasi
  4. Ba'zi Python bilimlari (kerak emas, lekin foydali)

1 -qadam: Wayscript va Alexa -ni o'rnating

Wayscript va Alexa -ni o'rnating
Wayscript va Alexa -ni o'rnating
Wayscript va Alexa -ni o'rnating
Wayscript va Alexa -ni o'rnating
Wayscript va Alexa -ni o'rnating
Wayscript va Alexa -ni o'rnating

Wayscript nima?

Wayscript - bu turli xil tetiklar yordamida dasturlarni ishga tushirish imkonini beradigan kuchli vosita. Biz "Insta" da Alexa -ni ishlatamiz, lekin dasturiy ta'minotni sinab ko'rishingiz mumkin - siz qo'shishingiz mumkin bo'lgan har xil funktsiyalar.

Boshlash uchun, Wayscript yordamida hisob yaratamiz:

  1. "Bepul ishga tushirish" yoki "Ro'yxatdan o'tish" tugmachalarini bosing. Men "Github bilan ro'yxatdan o'tish" variantidan foydalandim, chunki bu eng qulay edi.
  2. Hisob qaydnomasini yaratganingizdan so'ng, siz Wayscript -ning rivojlanish muhitiga o'tasiz. Ishni boshlashdan oldin darslikdan o'tish foydali bo'ladi.
  3. Qo'llanmani tugatgandan so'ng, profilingizga o'ting. "Yangi skript yaratish" tugmachasini bosing va sizdan loyihangizga nom berish so'raladi. Men uni "Qo'shiqlar matni" deb nomladim, lekin siz xohlagan narsaga nom berishingiz mumkin. Buni aytish oson ekanligiga ishonch hosil qiling, chunki siz Alexa -dan sizga so'zlarni yuborishni so'raganda, dastur nomidan foydalanasiz.
  4. Ismingizni kiritganingizdan so'ng, "yaratish" tugmachasini bosing va siz yangi Wayscript ishlab chiqish muhitiga olib borasiz. Tez orada bunga qaytamiz.

Davom etishdan oldin, Wayscript hisobingizni Alexa -ga ulaylik:

  1. Amazon.com saytiga o'ting va hisobingizga kiring-xususan, Alexa-ni qo'llab-quvvatlaydigan dinamik.
  2. Bu havolaga o'ting: https://www.amazon.com/WayScript-Inc/dp/B07QXXG32… va "yoqish" tugmasini bosing. Agar biron sababga ko'ra havola ishlamasa, Wayscript Alexa Skill -ni qidiring - yana "yoqish" tugmasini bosing.
  3. Yoqish tugmachasini bosgandan so'ng, uni Wayscript hisobingizga ulashingiz kerak. "Hisob qaydnomasini bog'lash" tugmachasini bosing, shunda sizni yo'llar veb -saytiga olib borish kerak. Hisobga kirgandan so'ng, "Sizning hisobingiz muvaffaqiyatli bog'landi" degan ekran paydo bo'ladi.

Bularning barchasini o'rnatganingizdan so'ng, biz (deyarli) dasturlashni boshlashimiz mumkin!

2 -qadam: RapidAPI hisobini yarating

RapidAPI hisobini yarating
RapidAPI hisobini yarating
RapidAPI hisobini yarating
RapidAPI hisobini yarating
RapidAPI hisobini yarating
RapidAPI hisobini yarating

Qo'shiq matnini qidirish uchun RapidAPI orqali kirish mumkin bo'lgan "Canarado Lyrics API" dan foydalanamiz. Agar sizda RapidAPI hisob qaydnomasi bo'lsa, siz bu bosqichni o'tkazib yuborishingiz mumkin, lekin bo'lmasa, o'qishni davom ettiring.

RapidAPI hisobini yaratish bilan boshlang:

  1. O'ng yuqori burchak yaqinidagi "Ro'yxatdan o'tish" tugmachasini bosing va ular mavjud bo'lgan har qanday variant bilan ro'yxatdan o'ting (Google, Github, Facebook yoki oddiy ro'yxatdan o'tish).
  2. Ro'yxatdan o'tgandan so'ng, Canarado Lyrics API-ga o'ting:

Agar siz yuqoridagi uchinchi rasmga o'xshash ekranni ko'rsangiz, siz bu bosqichni yakunladingiz. Biz nihoyat dasturlashni boshlaymiz.

3 -qadam: Asosiy dasturni yozing

Asosiy dasturni yozing
Asosiy dasturni yozing
Asosiy dasturni yozing
Asosiy dasturni yozing
Asosiy dasturni yozing
Asosiy dasturni yozing

Oldingi bosqichda aytilganidek, Canarado Lyrics API bu erda joylashgan:

U erga kelganingizda, "Kod parchalari" sarlavhasi bilan ekranning o'ng yarmiga o'ting. Men Python -dan ushbu qo'llanmada foydalanaman, lekin agar siz boshqa tilni xohlasangiz, davom eting va uning o'rniga foydalaning.

"(Node.js) tartibsizlik" yorlig'i bilan ochiladigan menyuni bosing va o'zingiz xohlagan tilga o'ting. Shunga qaramay, men Python -dan, xususan Python -dan (so'rovlar) foydalanaman, chunki bu dastur ma'lumotlarning ko'p qismi uchun API xostidan so'rovni talab qiladi. O'ng yuqori burchakdagi "Kodni nusxalash" tugmachasini bosib kodni nusxalash. Ushbu kodni o'zingiz tanlagan kod muharririga joylashtiring - men Jupyter daftarchasi muhitidan foydalanaman.

Dasturni joylashtirgandan so'ng, Python -ning json modulini import qiling. Bu bizga qo'shiq matnlarini chop etishimizga imkon beradi. Quyidagi kodni yuqoriga qo'shing (import so'rovlari ostida)

json import qilish

Json modulini import qilganingizdan so'ng, dasturingiz shunday bo'lishi kerak:

import so'rovlari

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-BU YERDA"} javob = request.request ("GET", url, sarlavhalar = sarlavhalar) chop etish (answer.text)

Sizning dasturingiz o'xshashligiga ishonch hosil qiling (boshqa API kaliti bilan) va keyin "url" o'zgaruvchisiga o'ting. Siz Kanaradoning standart parametri Denzel Kurining "Zenit" ekanligini ko'rasiz. Siz xohlagan qo'shiqni kiritish orqali buni o'zgartirishingiz mumkin. Misol uchun, agar men Maykl Jeksonning trilleriga tegishli so'zlarni qidirmoqchi bo'lsam, "zenit denzel kori" o'rniga "triller" ni kiritishim mumkin, shunda url hozir shunday bo'ladi:

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

Siz bo'sh joylarni ikkilanmasdan qo'shishingiz mumkin - brauzer avtomatik ravishda %2520 belgini qo'shadi (siz ularni standart url ichidagi bo'sh joylar o'rniga ko'rasiz). Masalan, Gangstas jannatini qidirish quyidagicha ko'rinishi mumkin.

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

Dasturni "zenit%2520denzel%2520curry" standart qiymatini o'zingiz xohlagan qo'shiq bilan almashtirib ishga tushiring. Ko'ryapsizmi, qo'shiq matni bosilgan, lekin o'qish qiyin. Qolaversa, boshqa ma'lumotlar, shu jumladan qo'shiqning chiqish sanasi, sarlavhasi va API holati haqidagi ma'lumotlar qo'shiqlarning ko'rinishiga to'sqinlik qiladi. Keling, buni keyingi bosqichda tuzataylik.

4 -qadam: Matnni formatlash

Matnni formatlash
Matnni formatlash

Matnni o'qiladigan qilib formatlash unchalik qiyin emas. Dasturlashni biladigan odamlarning ko'pchiligi buni juda oson bajaradilar. "Response.text" ni chop etishning o'rniga,.json () usulidan foydalanaylik. Bu API ma'lumotlarini lug'atga aylantiradi va hamma narsani yanada qulayroq qiladi.

Boshlash uchun 'javob.json ()' ni ushlab turadigan o'zgaruvchini yarating. Men o'z o'zgaruvchimni "ma'lumotlar" deb nomladim.

ma'lumotlar = javob.json ()

So'ngra, so'zlarga kirish uchun quyidagi "for" pastadiridan foydalaning.

i uchun ma'lumotlarda ['kontent']:

chop etish (i ['matn'])

Yuqoridagi kod ma'lumotlar lug'atining "kontent" kalitiga o'tadi. Kontent kaliti ichida for loopi sizga "lyrics" tugmachasiga o'tishga imkon beradi. Kod endi shunga o'xshash ko'rinishi kerak:

import so'rovlari

import json url = "https://canarado-lyrics.p.rapidapi.com/lyrics/YOUR-SONG-HERE" sarlavhalari = {'x-rapidapi-host': "canarado-lyrics.p.rapidapi.com", 'x-rapidapi-key': "YOUR-API-KEY-BU YERDA"} javob = request.request ("GET", url, sarlavhalar = sarlavhalar) ma'lumotlar = "ma'lumotlar" da i uchun javob.json (): chop etish (i ['matn'])

Ushbu dasturni ishga tushiring, shunda siz qo'shiq matnlari ancha o'qilishi mumkinligini sezasiz. Keyingi bosqichda biz bir nechta qo'shimcha o'zgaruvchilarni qo'shamiz, shunda biz qo'shiq nomini kirish sifatida ishlatamiz va Alexa -ga qo'shiq matnini chiqaramiz.

5 -qadam: kirish va chiqish

Kirish va chiqish
Kirish va chiqish
Kirish va chiqish
Kirish va chiqish

Hozircha biz URL oxiriga qo'shiq nomini kiritdik. Kirishdan o'zgaruvchini ishlatsak va ikkita satrni (url va qo'shiq nomi) birlashtirsak yaxshi bo'lardi. Buni qilish aslida juda oson.

Hozircha Python kiritish funksiyasidan foydalanaylik. Kodni Wayscript -ga yuklaganimizdan so'ng, biz o'z nutqimizni kirish sifatida ishlatamiz. Keling, foydalanuvchidan "qo'shiq sarlavhasini kiritishni" so'raydigan kirishga o'rnatilgan qo'shiq sarlavhasi o'zgaruvchisini yarataylik:

song_title = input ("Quyidagi so'zlarni topish uchun qo'shiq kiriting")

Keyin, String uchun Pythonning '+' operatoridan foydalanib, bu satrni url bilan bog'lang

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

Endi, siz dasturni ishga tushirganingizda, endi dastur ichida urlni tahrir qilishingiz shart emas. Buning o'rniga, qo'shiqning nomi bilan qo'shiqqa javob bering va qo'shiq matni chop etilishi kerak.

Sizning dasturingiz endi shunga o'xshash bo'lishi kerak:

import so'rovlari

import json song = input ("Quyidagi so'zlarni topish uchun qo'shiq kiriting") url = "https://canarado-lyrics.p.rapidapi.com/lyrics/" + qo'shiq sarlavhalari = {'x-rapidapi-host' ': "canarado-lyrics.p.rapidapi.com", 'x-rapidapi-key': "YOUR-API-KEY-BU YERDA"} javob = request.request ("GET", url, headers = headers) ma'lumotlar = javob.json () i ma'lumotidagi ['kontent']: chop etish (i ['matn'])

Nihoyat, matnni chiqarish uchun o'zgaruvchini yarataylik. Bo'sh qatorga o'zgaruvchilar to'plamini yaratish bilan boshlang. So'ng, oxirigacha 'i [' so'zlar ']' ni biriktiring. O'zgaruvchini for ko'chadan tashqarida chop eting.

so'zlar = ""

ma'lumotlar uchun i uchun ['kontent']: so'zlar += i ['matnlar'] bosib chiqarish (matn)

Yakuniy dastur shunday bo'lishi kerak:

import so'rovlari

import json song = input ("Quyidagi so'zlarni topish uchun qo'shiq kiriting") url = "https://canarado-lyrics.p.rapidapi.com/lyrics/" + qo'shiq sarlavhalari = {'x-rapidapi-host' ': "canarado-lyrics.p.rapidapi.com", 'x-rapidapi-key': "YOUR-API-KEY-BU YERDA"} javob = request.request ("GET", url, headers = headers) ma'lumotlar = javob.json () lyrics = "" for i in data ['content']: lyrics += i ['lyrics'] print (lyrics)

Dastur aynan shu narsani chop etadi, lekin hozir sizda o'zgaruvchi sifatida chiqishingiz mumkin. Endi biz nihoyat Wayscript yordamida Alexa va Email funksiyalarini qo'shishimiz mumkin.

6 -qadam: Alexa Trigger -ni qo'shish

Alexa Trigger qo'shilishi
Alexa Trigger qo'shilishi
Alexa Trigger qo'shilishi
Alexa Trigger qo'shilishi
Alexa Trigger qo'shilishi
Alexa Trigger qo'shilishi

Birinchi tetikni qo'shish uchun "Trigger qo'shish" tugmasini bosing:

  1. Qidiruv paneli paydo bo'ladi - "Alexa" ni qidiring, shunda siz Alexa -ni ishga tushirasiz. Agar siz bundan oldin Alexa -ni ishlatmagan bo'lsangiz yoki bu sizning birinchi loyihangiz bo'lsa, "import" tugmasini bosishingiz kerak bo'ladi. Import qilinganidan so'ng, ustiga bosing va u qo'shilishi kerak.
  2. Tabletka shaklidagi kalitni bosish orqali tetikni yoqing. U yashil rangga aylanishi kerak. Chap tomonda siz "Chiqish" deb nomlangan bo'limni ko'rasiz. "Og'zaki kirish" yozuvi yonidagi katakchani bosing va oldingi song_title o'zgaruvchisiga o'xshash qiymatni kiriting. Endi biz siz aytgan ma'lumotni biz ilgari ishlatgan so'zlar o'rniga ishlatishimiz mumkin
  3. Odatiy qiymat yozganingizga ishonch hosil qiling (ehtimol sizning sevimli qo'shiqlaringiz), chunki siz bir nechta xatolarga duch kelishingiz mumkin.

Keyingi bosqichlarda biz Python dasturini, elektron pochtani yuborish usulini qo'shamiz va Alexa bu usul tugallanganligini tasdiqlaydi.

7 -qadam: Python dasturini qo'shish

Python dasturini qo'shish
Python dasturini qo'shish
Python dasturini qo'shish
Python dasturini qo'shish
Python dasturini qo'shish
Python dasturini qo'shish
Python dasturini qo'shish
Python dasturini qo'shish

Dasturingizni joriy Wayscript oqimiga qo'shish uchun "Qo'shish" tugmasini bosing.

  1. Python -ni qidiring va Python -ni bosing. Bu tetikni yangilashi kerak va siz chap tomonda yorliq paydo bo'lishini ko'rasiz.
  2. Yon paneldagi dasturning ustiga suring va siz "Kodni tahrirlash" tugmachasini ko'rasiz. Unga bosing va to'liq ekranli muharrir paydo bo'ladi.
  3. To'liq ekranli muharrirda biz ilgari yaratgan python dasturini nusxa ko'chiring va joylashtiring.
  4. Biz yozgan song_title = input ("…") o'zgaruvchisini o'chirib tashlang va oldingi bosqichda biz yaratgan og'zaki kiritish o'zgaruvchisini qo'shing. Oldingi bosqichlarda yaratilgan o'zgaruvchilar chap pastki burchakda joylashgan.
  5. Sizning yangi dasturingiz yuqoridagi 6 -rasmga o'xshash bo'lishi kerak.
  6. Nihoyat, biz o'zimizning lyrics o'zgaruvchisini chiqish sifatida o'rnatmoqchimiz. Buni amalga oshirish uchun quyidagi kodni dasturingizning pastki qismiga nusxa ko'chiring va joylashtiring (yoki bosma bayonot o'rniga).

o'zgaruvchilar ['Song_Lyrics'] = matn

Bu Song_Lyrics deb nomlangan chiqish o'zgaruvchisini yaratadi va uni biz yaratgan "lyrics" o'zgaruvchisiga tenglashtiradi. Sizning oxirgi dasturingiz xuddi yuqoridagi rasmga o'xshab ketishi kerak. Kodni bir marta ishga tushiring, shunda Wayscript nima bo'layotganini biladi va chiqish parametrlarini yaratadi. Bu bir necha daqiqa o'tishi mumkin, lekin agar bu juda uzoq davom etsa, sahifani qayta yuklashingiz kerak bo'ladi. Wayscript bir nechta xatolarni o'z ichiga oladi, shuning uchun eng yomon stsenariy skriptni qayta yaratishga olib kelishi mumkin.

8 -qadam: Matnni yuboring va Alexa bilan tasdiqlang

Matnni yuboring va Alexa bilan tasdiqlang
Matnni yuboring va Alexa bilan tasdiqlang
Matnni yuboring va Alexa bilan tasdiqlang
Matnni yuboring va Alexa bilan tasdiqlang
Matnni yuboring va Alexa bilan tasdiqlang
Matnni yuboring va Alexa bilan tasdiqlang

Bizda WayScript oqimiga qo'shilishimiz kerak bo'lgan yana ikkita qadam bor - bu sizga o'zingizga elektron pochta xabarini yuborish imkonini beradigan qadam va elektron pochta yuborilganligini tasdiqlovchi boshqa qadam. E -pochta qadamini yaratish bilan boshlaylik.

  1. "Qadam qo'shish" ni bosing, "E-pochtani yuborish" ni qidiring va chap tomondagi yorliqni toping
  2. "Song_Name" (yoki Song_Title) va "Song_Lyrics" kabi oldingi bosqichlarda yaratilgan o'zgaruvchilardan foydalaning.
  3. Siz xohlagan tarzda elektron pochtani formatlashingiz mumkin. Masalan, men "Song_Name" o'zgaruvchisidan keyin "Lyrics" so'zini qo'shib qo'ydim va "Mana siz so'ragan qo'shiqning so'zlari" tepasiga yaqin qo'shdim.

Bu skript siz ro'yxatdan o'tgan elektron pochta xabarini yuboradi. Agar siz uni boshqa elektron pochtaga yubormoqchi bo'lsangiz, uning o'rniga SMTP elektron pochta harakatidan foydalanishingiz kerak bo'ladi.

Nihoyat, elektron pochta Alexa bilan yuborilganligini tasdiqlaylik.

  1. "Qadam qo'shish" ni bosing va yana "Alexa" ni qidiring. Alexa harakatini qo'shing.
  2. Men buni elektron pochta yuborilgandan so'ng, Alexa "[Song_Name] so'zlari yuborilgan" deb aytdi.

Siz tugatdingiz! "Ishga tushirish" tugmasini bosish orqali dasturni bir marta ishga tushiring. Agar xatolar bo'lmasa, endi uni Alexa bilan ishlatishingiz mumkin.

9 -qadam: Siz tugadingiz

Alexa -dan foydalanish uchun siz quyidagi buyruqlarni ishlatishingiz kerak bo'ladi:

"Alexa, Wayscript -ni ishga tushiring"

Alexa Wayscript ishga tushirilganligini tasdiqlagach, ayting:

'[Dastur nomi] ni [Qo'shiq nomi] bilan ishga tushirish'

Masalan, mening dasturim "Qo'shiqlar matni" deb nomlanadi - Agar men Alexa menga trillerga qo'shiq yozishni xohlasa, men aytaman:

"Triller bilan qo'shiq qo'shiqlarini ijro eting"

Tavsiya: