Агуулгын хүснэгт:
- Алхам 1: Үйлчлүүлэгч ба сервер
- Алхам 2: Локал вэб сервер үүсгэх
- Алхам 3: Apache -ийг суулгана уу
- Алхам 4: Статик вэб хуудас хийх
- Миний Raspberry Pi вэбсайттай
- Алхам 5: Зарим хэв маягийг нэмнэ үү
- Алхам 6: PHP суулгана уу
- Алхам 7: Динамик вэб хуудас хийх
- Алхам 8: Tumblr API клиент үүсгэх
Видео: Raspberry Pi -гээ интернетэд холбох: 9 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:01
Энэ хичээлээр та вэб хуудас хэрхэн үүсгэх, дэлхийн сүлжээ ашиглан мэдээлэл цуглуулах, API ашиглан Tumblr, Twitter дээр зураг оруулах талаар сурах болно.
Алхам 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 хэлийг ашиглах хэрэгтэй. Вэб хуудас руу ороход хамгийн түрүүнд индекс.html хуудас харагдах болно. Энэ хуудас нь өөр хуудас заагаагүй бол хөтөчийн харуулдаг үндсэн хуудас юм. Анхдагч байдлаар Apache нь index.html файлыг эндээс хайна.
/var/www/html
Үүнийг баримт бичгийн үндэс гэж нэрлэдэг бөгөөд энэ нь далд хавтас юм. Энэ нь вэб хуудсуудыг хадгалахад зориулагдсан болно. Тэнд очоод эргэн тойрноо хараарай:
cd/var/www/html
ls
Та индекс.html -ийн анхдагч файлын жагсаалтыг харах болно. Хэрэв та анхдагч файлыг хадгалахыг хүсвэл mv командыг ашиглан үүнийг defaultIndex.html шиг нэрлээрэй.
sudo mv index.html defaultIndex.html
Хэрэв та хадгалахыг хүсэхгүй байгаа бол файлыг rm командыг ашиглан устгана уу.
sudo rm index.html
Одоо та өөрийн index.html файлыг үүсгэж, засварлаж эхлэх боломжтой.
sudo нано индекс.html
Sudo ашиглахаа мартуузай, www ба html лавлахууд нь root -ийн эзэмшилд байдаг тул та эдгээр санд байгаа файлуудыг үүсгэх, засварлах, удирдахын тулд root -ийн үүргийг гүйцэтгэх ёстой.
Үндсэн HTML хуудас
HTML бол гүнзгийрүүлсэн хэл юм. Үүний тусламжтайгаар та маш их зүйлийг хийж чадна. Хэрэв та илүү ихийг мэдэхийг хүсч байвал W3Schools -ийн вэбсайтыг үзээрэй, эндээс вэбсайт бүтээхдээ HTML -ийг хэрхэн ашиглах талаар олон хичээлийг үзэх боломжтой. Бид энгийн HTML хуудаснаас эхлэх болно.
Эхлээд HTML -ийн аль хувилбарыг ашиглаж байгаагаа хөтөчдөө хэлээрэй. Энэ документыг HTML5 doc гэж зарласан болно.
Html болон биеийн хаягаар эхэл:
Таны агуулгын ихэнх хэсэг нь дараа нь биеийн хаягийн хооронд ордог. Эхний мөрийг h1 тагтай гарчиг болго. "H" үсгийн дараах тоо нь үсгийн хэмжээтэй холбоотой гарчгийн ач холбогдлыг тодорхойлдог. Догол мөрийг тодорхойлохын тулд p хаягийг ашиглана уу.
Миний Raspberry Pi вэбсайттай
Би энд юу оруулах ёстой вэ?
Үндсэн болон html болон хаягийг хааж хуудсыг дуусгана уу.
Баримт бичгийг.html дагавараар хадгалаад хөтөч дээрээ localhost руу зочилно уу. Та вэб хуудсаа харах болно!
Та вэб хуудсан дээр юу оруулах ёстой вэ? Зургийг тавь, эсвэл илүү дээр нь animateMe.gif! Аливаа хөрөнгийг энэ вэб хуудсан дээр харуулахын тулд үүнийг Apache -ийн баримт бичгийн эх хэсэгт оруулах ёстой. Та үүнийг хуулж, буулгах хэрэгтэй бөгөөд ингэснээр таны boof/fotos лавлах санд үлдэх болно. Файлыг тушаалын мөрөнд хуулж буулгахын тулд cp командыг ашиглана уу. Нэгдүгээрт, таны гэрийн лавлах руу cd оруулна уу:
cd ~
AnimateMe-g.webp
sudo cp boof/fotos/animateMe.gif/var/www/html
Html лавлах руу буцах:
cd/var/www/html
Index.html файлыг дахин нээгээрэй, ингэснээр та зургийг нэмж болно.
sudo нано индекс.html
HTML хуудсан дээрх зургийг тодорхойлох, оруулахын тулд img хаягийг ашиглана уу. Гарчиг ба догол мөрний хооронд дараах мөрийг тавь.
Хуудсыг хөтөч дээр нээвэл өөрийн загварлаг селфи-g.webp
Алхам 5: Зарим хэв маягийг нэмнэ үү
Хуудас жаахан эвгүй харагдаж байна. Өнгө, хэв маяг байхгүй. Энд CSS гарч ирдэг. Энэ бол вэб хуудсыг илүү сэтгэл татам, харааны бүтээлч болгохын тулд HTML-тэй хамтран ажилладаг хэл юм. Та зөвхөн энд хүрэх болно, гэхдээ хэрэв та илүү ихийг мэдэхийг хүсч байвал W3 сургуулийн талаар илүү ихийг мэдэж аваарай.
Жишээ болгон, HTML файлдаа CSS нэмж арын өнгийг өөрчилье. CSS ашиглан вэб хуудсаа загварчлах хэд хэдэн арга байдаг. Энэ ангийн хувьд та CSS -ийг HTML файлдаа шууд оруулахын тулд загварын хаягийг ашиглана.
Дараах мөрүүдийг HTML хуудасныхаа дээд хэсэгт байгаа анхны html болон биеийн хаягийн хооронд оруулна уу.
body {background-color: powderblue;} хаягууд. Энэ нь иймэрхүү харагдах болно:
биеийн {дэвсгэр өнгө: нунтаг цэнхэр;}
Алхам 6: PHP суулгана уу
Статик хуудасны оронд та файлуудыг гараар оруулахгүйгээр өөрчлөх боломжтой динамик хуудсыг хийж болно. Үүнийг хийх түгээмэл арга бол PHP гэж нэрлэгддэг скрипт хэл ашиглах явдал юм. Raspberry Pi дээр PHP ашиглахын тулд та үүнийг эхлээд Apache -ийн модулийн багцаар суулгах хэрэгтэй.
sudo apt-get libapache2-mod-php5 php5 -y суулгана уу
Алхам 7: Динамик вэб хуудас хийх
PHP -г HTML -тэй хослуул PHP код нь хаягууд дотор байгаа тохиолдолд та үүнийг HTML файлын бүтцэд оруулж болно. Жишээлбэл, одоогийн HTML болон PHP скриптүүдээ нэгтгэж, HTML хаягийг ашиглан текстийг томруулаарай.
Огноо, цагийг харуулдаг энгийн PHP скриптийг оруулъя. Дараах зүйлсийг хаягийн хооронд хаана ч хамаагүй байрлуулна уу.
Файлыг Ctrl + o ашиглан хадгална уу.html -ийн өргөтгөлийг.php болгон өөрчилснөөр шинэ файл хадгалагдах болно. Хөтөчийг төөрөгдүүлэхгүйн тулд хуучин.html хувилбарыг устгана уу.
sudo rm index.html
Өөрийн вэб хөтөч дээр localhost -ийг сэргээнэ үү. Гаралт дараах байдлаар харагдах болно.
За, ялгаа нь юу вэ? Ердийн HTML хуудас шиг харагдаж байна, тийм үү? Хуудсыг сэргээж, ид шидийг үзээрэй. Цаг бол ид шид нь өөрчлөгдөх болно! Энэ бол PHP болон түүний суурилуулсан date () функц бөгөөд танд динамик вэб хуудас хийхэд туслах болно.
Алхам 8: Tumblr API клиент үүсгэх
Raspberry Pi нь API (Application Programming Interface) ашиглан онлайнаар бусад програмын програмаас мэдээлэл авах боломжтой. 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 -г ашиглахаасаа өмнө та эдгээр дөрвөн түлхүүрийг авах ёстой (нууц үгтэй төстэй). Тэднийг авахын тулд дараах алхмуудыг дагана уу.
- Үнэгүй Tumblr данс үүсгээд нэвтэрнэ үү.
- Өргөдөл бүртгүүлэх. Та зөвхөн гарчиг ("Миний бөөрөлзгөнө Pi" -ийг туршиж үзээрэй), тайлбар, имэйл, вэбсайт гэх мэт үндсэн мэдээллийг өгөх хэрэгтэй (хэрэв танд байхгүй бол үүнийг ашиглаарай). Бүртгүүлсний дараа та хэрэглэгчийн түлхүүр болон хэрэглэгчийн нууцыг авах болно. Текст файл эсвэл имэйл гэх мэт аюулгүй газар хуулж тавь. Тэдэнд дахин хандахын тулд Tumblr дансныхаа хуудас руу орж, дансны цэсэн дэх Тохиргоог сонгоод Аппликешн дээр дарна уу.
- Түлхүүр болон нууц зөвшөөрлийн кодоо ашиглан хөгжүүлэгчийн консол руу нэвтэрнэ үү. Таны өмнөөс нийтлэхийг хүсч байгаа эсэхийг асуухад зөвшөөрөх дээр дарна уу.
- Хөгжүүлэгчийн консол руу нэвтэрсний дараа та хэд хэдэн өөр хэл дээрх жишээ кодыг харах болно. Python таб дээр дарж OAuth блокыг хуулж эсвэл дээд цэснээс Show Keys товчийг дарж жетоны түлхүүр болон жетоны нууц кодыг өөрт байгаа хоёр кодтой хамт харна уу.
Эдгээр кодыг ажиллуулж, animateMe-g.webp
Эхлээд Pytumblr -ийг суулгаарай:
sudo apt-get update
sudo pip суулгах pytumblr
Гэрийн лавлахаас cd boof хавтас руу ороод Python файл үүсгэнэ үү.
cd boof
IDLE -ийн редакторыг ашиглан файл үүсгэж, зөвшөөрлийн кодоо хайчилж, буулгахад хялбар болгоно уу. Үүнийг testPytumblr.py файлдаа оруулаад дөрвөн түлхүүр болон хэрэглэгчийн нэрээ шинэчилнэ үү.
pytumblr импортлох
# OAuth -ээр дамжуулан баталгаажуулж, https://api.tumblr.com/console/calls/user/info client = pytumblr. TumblrRestClient ('your_consumer_key', 'your_consumer_secret', 'your_token', 'your_token.secret) '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 хэрэглэгчийн нэрээ зөв оруулсан эсэхээ шалгаарай, мөн таны Пи -ийн интернет холболт идэвхтэй байгаа эсэхийг шалгаарай. Та мөн скриптийг Python 2 ашиглан тушаалын мөрөөс ажиллуулж болно (хэрэв та одоогоор байхгүй бол cd -ийг хавтас руу оруулна уу):
python тестPytumblr.py
Зөвлөмж болгож буй:
Хөрсний чийгийн санал хүсэлтийг хянадаг интернетэд холбогдсон дуслын усжуулалтын систем (ESP32 ба Blynk): 5 алхам
Хөрсний чийгийн талаархи санал хүсэлтийг хянадаг интернетэд холбогдсон дуслын усжуулалтын систем (ESP32 ба Blynk): Урт амралтаар явахдаа цэцэрлэг эсвэл ургамлынхаа талаар санаа зовох, эсвэл өдөр бүр ургамлаа услахаа мартуузай. Энд шийдэл байна.Энэ нь хөрсний чийгийн хяналттай, дэлхий даяар холбогдсон дуслын усалгааны систем бөгөөд програм хангамжийн урд талд ESP32 -ээр хянагддаг
Интернетэд холбогдсон дэлгүүрийн стерео хийх: 6 алхам (зурагтай)
Интернет холболттой дэлгүүрийн стерео хийх: Би машин жолоодож байхдаа радио асаахдаа өөрийн коллежийн 90.7 KALX радио станц руу ханддаг. Олон жил, өөр өөр газар амьдарч байхдаа би коллежийн радио станцуудыг үргэлж сонсдог байсан. Интернетийн хүч чадлын ачаар би одоо сонсох боломжтой боллоо
DIY утасгүй автомат усалгааны систем нь интернетэд холбогдох шаардлагагүй: 3 алхам
DIY утасгүй автомат усалгааны систем нь интернетэд холбогдох шаардлагагүй: Би ургамлаа өөр өөр улирлаас хамааран өдөрт нэг эсвэл хоёр удаа автоматаар усалж байхыг хүсч байна. Гэхдээ IOT -ийн найзыгаа ажил хийлгэхийн оронд би энэ даалгаврыг гүйцэтгэхэд ганцаараа байхыг илүүд үздэг. Учир нь би явахыг хүсэхгүй байна
Zwift -ийн интернетэд холбогдсон фен: 7 алхам (зурагтай)
Zwift -тэй интернетэд холбогдсон фен: Би интернэтэд холбогдсон фен хийлээ. Звифт, дугуйн уралдааны тоглоом / сургалтын систем. Та Zwift -т илүү хурдан очиход фен нь унах нөхцлийг дуурайхын тулд илүү хурдан эргэдэг
IoT цаг агаарын мониторын цахим цаасан дэлгэц - Интернетэд холбогдсон ESP8266: 7 алхам
IoT цаг агаарын мониторын цахим цаасан дэлгэц | Интернетэд холбогдсон ESP8266: Цахим цаасан дэлгэц нь OpenWeatherMap API (WiFi-ээр) синхрончлогдсон цаг агаарын мэдээллийг харуулах болно. Төслийн зүрх бол ESP8266/32. Хөөе, залуусаа? Акарш энд CETech -ээс ирсэн бөгөөд өнөөдөр бид цаг агаарын хяналт хийх төсөл хийх гэж байна