Мазмұны:

Raspberry Pi -ді желіге қосу: 9 қадам
Raspberry Pi -ді желіге қосу: 9 қадам

Бейне: Raspberry Pi -ді желіге қосу: 9 қадам

Бейне: Raspberry Pi -ді желіге қосу: 9 қадам
Бейне: Оңай және арзан үй инкубаторын қалай жасауға болады. 2024, Шілде
Anonim
Raspberry Pi -ді желіге қосу
Raspberry Pi -ді желіге қосу

Бұл сабақта сіз веб -бетті құруды, бүкіләлемдік ғаламторды пайдаланып деректерді жинауды және суреттерді Tumblr мен Twitter -ге орналастыру үшін API -ді қолдануды үйренесіз.

1 -қадам: Клиент және сервер

Есептеуде клиент-сервер-бұл екі бөліктен тұратын бағдарламалық модель: клиент пен сервер. Екеуі де компьютерлік желі арқылы немесе бір компьютерде бірге сөйлеседі. Клиент - бұл серверге қызмет сұрауларын жасауға негізделген бағдарламалық жасақтамасы бар компьютер немесе компьютер. Сервер - бұл компьютерлік бағдарлама немесе бұл сұраныстарды қабылдай алатын, өңдей алатын және клиентке сұралған ақпаратты қайтаратын құрылғы. Кейде бірнеше тапсырманы бірден орындайтын машиналармен жұмыс істеу кезінде қайсысы екенін анықтау қиынға соғады. Клиент пен серверді ажыратуға көмектесетін кейбір сипаттамалар.

Клиент ерекшеліктері:

  • Бұл бірінші белсенді
  • Сұраныстарды серверге жібереді
  • Ол серверден жауап күтеді және қабылдайды
  • Әдетте графикалық интерфейс сияқты кез келген пайдаланушы интерфейсін қолдана отырып, соңғы пайдаланушылармен тікелей әрекеттеседі

Сервер сипаттамалары:

  • Бұл бастапқыда пассивті
  • Ол тыңдайды, клиенттер жіберген сұраныстарға жауап беруге дайын
  • сұраныс келгенде, клиенттерге сұралған деректермен жауап береді
  • Түпкі пайдаланушылар әдетте сервермен тікелей әрекеттеспейді, бірақ клиентті пайдаланады.
Кескін
Кескін

Клиент пен сервер қарым -қатынасының жалпы мысалы - веб -браузер (клиент) веб -серверде орналастырылған веб -бет файлдарын сұрау және алу.

2 -қадам: Жергілікті веб -сервер құру

Raspberry Pi серверлік қосымшаны орнату және іске қосу арқылы веб -сервер бола алады. Ашық бастапқы коды бар екі танымал қосымшалар: NGINX (x қозғалтқышы) және Apache. Бұл сабақта сіз Apache -ді қолданасыз, себебі бұл жазбада ол неғұрлым нақты құжатталған. Бұл интернеттен жауап іздеуді үйрену кезінде жеңілдетеді.

Сіздің Raspberry Pi бір желідегі кез келген құрылғы кіре алатын веб -сайтты орналастырады. Бастайық!

3 -қадам: Apache орнатыңыз

Apache2 бумасын орнатыңыз. -Y жалаушасы сіз үшін алдын ала орнатылған қауіпсіздік сұрағына жауап береді.

sudo apt -get apache2 -y орнатыңыз

Apache орнатуды тексеру үшін толтырғыш веб -бетін құратын HTML тестілеу файлымен бірге келеді. Бұл тест HTML файлы Apache түбірлік каталогында болады. Әдепкі бойынша, Apache веб -шолғышта мазмұн жасау үшін веб -құжаттарды осы каталогтан іздеуге орнатылады. Бұл тестілеу бетін қарап шығу және Apache -дің дұрыс орнатылғанын растау үшін мына URL мекен -жайын енгізу арқылы веб -шолғышта оны көтеріңіз:

localhost/

Егер Apache дұрыс орнатылса, сіз шолғышта Apache тестінің веб -бетін көресіз:

Кескін
Кескін

Raspberry Pi IP мекенжайын табыңыз

Raspberry Pi кезінде веб -бетке кіру үшін localhost мекенжайын пайдалануға болады. Басқа компьютерден веб -бетке кіру үшін сізге Raspberry Pi -дің IP -адресі қажет. LXTerminal -де IP -адрес түрін табу үшін:

ifconfig

Кескін
Кескін

Егер сіз курсорды WiFi қабылдау белгісінің үстіне апарсаңыз, оны жұмыс үстелінен таба аласыз.

Кескін
Кескін

4 -қадам: Тұрақты веб -бет жасаңыз

Сіздің Raspberry Pi енді веб -бетті және онда жарияланатын барлық мазмұнды орналастыра алады. Веб -беттердің екі негізгі түрі бар: статикалық және динамикалық. Тұрақты бетте өзгермейтін мазмұн бар. Динамикалық бет сенсордың оқылуы немесе уақыт пен күннің өзгеруі сияқты өзгеретін деректерді көрсете алады.

Статикалық беттен бастайық. Оны жасау үшін сізге HTML деп аталатын тіл қажет. Веб -бетке кіргенде, бірінші болып index.html беті көрінеді. Бұл бет басқа бет көрсетілмеген жағдайда шолғыш көрсететін әдепкі бет. Әдепкі бойынша, Apache index.html файлын мына жерден іздейді:

/var/www/html

Бұл құжат түбірі деп аталады және ол жасырын қалта. Ол веб -беттерді ұстауға арналған. Онда барып, айналаңызға қараңыз:

cd/var/www/html

ls

Сіз тізімделген index.html әдепкі тест файлын көресіз. Егер сіз әдепкі файлды сақтағыңыз келсе, mv пәрменін қолданып, оны defaultIndex.html сияқты өзгертіңіз.

sudo mv index.html defaultIndex.html

Егер сіз оны сақтағыңыз келмесе, rm пәрменін қолданып файлды жойыңыз:

sudo rm index.html

Енді сіз өзіңіздің index.html файлыңызды жасай және өңдей бастай аласыз:

sudo nano index.html

Sudo қолдануды ұмытпаңыз, www және html каталогтары rootке тиесілі, сондықтан сіз осы каталогтарда тұратын файлдарды жасау, өңдеу және өңдеу үшін түбір ретінде әрекет етуіңіз керек.

Негізгі HTML беті

HTML - тереңге кететін тіл. Сіз онымен көп нәрсе жасай аласыз. Егер сіз көбірек білгіңіз келсе, W3Schools веб -сайтын қараңыз, онда сіз веб -сайт құру үшін HTML -ді қолдану туралы көптеген оқулықтарды таба аласыз. Біз қарапайым HTML бетінен бастаймыз.

Алдымен браузерге HTML -дің қандай нұсқасын қолданғаныңызды айтыңыз. Бұл құжат HTML5 құжаты ретінде жарияланды:

Html және body тегтерінен бастаңыз:

Мазмұнның негізгі бөлігі негізгі тегтер арасында болады. Бірінші жолды h1 тегімен тақырыпқа айналдырыңыз. «H» әрпінен кейінгі сан қаріп өлшеміне әсер ететін тақырыптың маңыздылығын анықтайды. Абзацты анықтау үшін p тегін пайдаланыңыз:

Менің Raspberry Pi веб -сайты бар

Мен мұнда не қоюым керек?

Бетті негізгі және html мен тегтерді жабу арқылы аяқтаңыз:

Құжатты.html жұрнағымен сақтап, шолғышта localhost сайтына кіріңіз. Сіз өзіңіздің веб -парағыңызды көресіз!

Кескін
Кескін

Веб -параққа не қою керек? Кескінді немесе жақсырақ animateMe-g.webp

cd ~

AnimateMe-g.webp

sudo cp boof/fotos/animateMe.gif/var/www/html

Html каталогына оралыңыз:

cd/var/www/html

Index.html файлын қайта ашыңыз, сонда сіз кескінді қоса аласыз:

sudo nano index.html

HTML бетіне кескінді анықтау және ендіру үшін img тегін қолданыңыз. Тақырып пен параграфтың арасына келесі жолды қойыңыз.

Бетті браузерде ашыңыз, бұл сіздің жеке стильді селфи-g.webp

Кескін
Кескін

5 -қадам: Стиль қосыңыз

Бұл бет сәл жұмсақ көрінеді. Түсі де, стилі де жоқ. Бұл жерде CSS пайда болады. Бұл веб-бетті тартымды және көрнекі түрде креативті ету үшін HTML-мен жұмыс істейтін тіл. Сіз мұнда ғана хабарласасыз, бірақ егер сіз W3schools туралы көбірек білгіңіз келсе, көбірек біліңіз.

Мысал ретінде HTML файлына CSS қосу арқылы фон түсін өзгертейік. CSS көмегімен веб -бетті сәндеудің бірнеше әдісі бар. Бұл сынып үшін сіз CSS -ті HTML файлына енгізу үшін стиль тегтерін қолданасыз.

Келесі жолдарды HTML -парағыңыздың жоғарғы жағындағы бірінші html мен body тегтерінің арасына қойыңыз:

body {background-color: powderblue;} тегтері. Ол келесідей болады:

Кескін
Кескін

дене {фон түсі: ұнтақ көк;}

Кескін
Кескін

6 -қадам: PHP орнатыңыз

Тұрақты беттің орнына сіз файлдарды қолмен жүктемей -ақ өзгерте алатын динамикалық бетті жасай аласыз. Бұның танымал әдісі - PHP деп аталатын сценарий тілін қолдану. Raspberry Pi -де PHP қолдану үшін алдымен оны Apache модульдік пакетімен бірге орнату қажет:

sudo apt-get libapache2-mod-php5 php5 -y орнатыңыз

7 -қадам: Динамикалық веб -бет жасаңыз

PHP кодын HTMLA -мен біріктіру, егер PHP коды тегтерде болса, оны HTML файл құрылымына қосуға болады. Мысалы, қазіргі HTML және PHP сценарийлерін біріктіріп, HTML тегтерін қолдана отырып мәтінді үлкейтіңіз.

Күн мен уақытты көрсететін қарапайым PHP сценарийін қосайық. Тегтердің арасына кез келген жерге қойыңыз:

Файлды Ctrl + o көмегімен сақтаңыз, бірақ кеңейтімді.html -ден.php -ге өзгертіңіз, ол жаңа файлды сақтайды. Браузерді шатастырмау үшін ескі.html нұсқасын жойыңыз:

sudo rm index.html

Веб -шолғышта localhost жаңартыңыз. Шығару келесідей болады:

Кескін
Кескін

Жарайды, айырмашылығы неде? Бұл қарапайым HTML бетіне ұқсайды, солай емес пе? Бетті жаңартыңыз және сиқырды қараңыз. Уақыттың сиқыры өзгереді! Бұл PHP және оның кіріктірілген датасы () функциясы динамикалық веб-бетті жасау үшін жұмыс істейді.

8 -қадам: Tumblr API клиентін жасаңыз

Raspberry Pi API (Қолданбалық бағдарламалау интерфейсі) арқылы басқа бағдарламалық қосымшалардан ақпаратты сұрай алады және ала алады. API Raspberry Pi сияқты пайдалы ақпаратты алу үшін веб -сайттың барлық деректерін қиып алуды жеңілдетеді. Raspberry Pi -ге Tumblr, Twitter және weather.com сайттарымен сөйлесіп, суреттер жіберіңіз және ауа райы болжамдарын көрсетіңіз.

Raspberry Pi және Tumblr

Келесі жаттығу сіздің Raspberry Pi мен Tumblr арасында әңгіме құрады. Клиент ретінде сіздің Raspberry Pi Tumblr -дан деректердің үзінділерін сұрайды, осылайша ол суреттерді Tumblr қашықтағы серверіне жүктей алады, нәтижесінде суреттер Tumblr есептік жазбасына орналастырылады. Raspberry Pi API -мен жұмыс істеу үшін сізде кітапхана болуы мүмкін. Tumblr үшін Pytumblr бар. Клиент Python бағдарламасында Pytumblr-да құрылған кіріктірілген функция көмегімен жасалады. Бұл функция Tumblr жасаған төрт авторизация кодын қолданады:

  • тұтынушылық кілт
  • тұтынушылық құпия
  • жетондық кілт
  • таңбалық құпия

Tumblr API қолданбас бұрын сізде төрт кілт болуы керек (парольдерге ұқсас). Оларды алу үшін мына қадамдарды орындаңыз:

  1. Тегін Tumblr есептік жазбасын жасаңыз және жүйеге кіріңіз.
  2. Өтінімді тіркеу. Сізге атау («Менің таңқурай Pi» дегенді қолданып көріңіз), сипаттама, электрондық пошта және веб -сайт сияқты негізгі ақпаратты беру қажет (егер сізде жоқ болса, оны қолданыңыз). Тіркелгеннен кейін сіз тұтынушылық кілт пен тұтынушылық құпияны аласыз. Оларды мәтіндік файл немесе электрондық пошта сияқты қауіпсіз жерге көшіріңіз. Оларға қайта кіру үшін Tumblr есептік жазбасының бетіне өтіңіз, Тіркелгі мәзірінен Параметрлер тармағын таңдап, Бағдарламалар түймесін басыңыз.
  3. Кілт пен құпия авторизация кодтарын қолдана отырып, әзірлеуші консоліне кіріңіз. Сіздің атыңыздан жариялауды қалайсыз ба деп сұрағанда, рұқсат ету түймесін басыңыз.
  4. Әзірлеуші консоліне кіргеннен кейін сіз бірнеше түрлі тілдегі кодты көресіз. Python қойындысын нұқыңыз және OAuth блогын көшіріңіз немесе жоғарғы мәзірде кілттерді көрсету белгісін және құпия кодты және екі кодты көріңіз.

Келіңіздер, осы кодтарды жұмысқа енгізіп, animateMe-g.webp

Алдымен Pytumblr орнатыңыз:

sudo apt-get жаңартуы

sudo pip install pytumblr

Үй каталогынан cd -ті boof қалтасына салыңыз және Python файлын жасаңыз:

cd boof

IDLE редакторының көмегімен файлды жасаңыз, авторизация кодтарын қысқарту және қоюды жеңілдету үшін. Мұны testPytumblr.py файлына қойыңыз, төрт кілт пен пайдаланушы атын жаңартыңыз:

pytumblr импорттау

# OAuth арқылы аутентификация, https://api.tumblr.com/console/calls/user/info клиентінен көшіру = pytumblr. TumblrRestClient ('сіздің_тұтынушы_кілтегіңіз', 'сіздің_тұтынушыңыздың құпиясы', 'сіздің_токен', 'сіздің_клитеріңіздің_ тұтынушысы) 'your_account_username', state = «published», tags = [«raspberrypi», «picamera»], data = «fotos/animateMe.gif») басып шығару («жүктелген»)

Бағдарлама сізге жүктелген суретті «таңқурай» және «пикамерамен» белгілейді. Қаласаңыз, бұл тегтерді алып тастауға, алмастыруға немесе қосуға болады. Олар client.create_photo () ішінде қолданылатын тегтер деп аталатын айнымалыда сақталады.

Бағдарламаны іске қосу үшін F5 пернесін басыңыз. Қате болады … бірақ сіз Pytumblr орнатқансыз, неге Python модульді таба алмайтынын айтады? Себебі Pytumblr Python 3 -ке қолдау көрсетпейді, ол тек Python 2*жұмыс істейді. Python 2 IDLE редакторын ашып, кодты қиып, қойыңыз, Python 3 бағдарламасын қайта жазыңыз, содан кейін оны іске қосыңыз. Ол-g.webp

Бұл қызықты бөлім! Tumblr бетіне өтіп,-g.webp

Кескін
Кескін

*Бұл сынып жарияланғаннан кейін, басқа github пайдаланушысы түпнұсқадан айырылды, белгілі командаларға Python 3 қолдауын қосты.

Егер хабарлама шықпаса, төрт кілт пен Tumblr пайдаланушы атын дұрыс енгізгеніңізді және Pi интернет байланысы белсенді екенін екі рет тексеріңіз. Сондай -ақ, сценарийді Python 2 көмегімен пәрмен жолынан іске қосуға болады (егер сіз әлі жоқ болсаңыз, қалтаңыздың қалтасына CD):

python testPytumblr.py

Ұсынылған: