» หัวข้อ » เคล็ดลับ »ข้อมูล Parser จากอินเทอร์เน็ตบน Arduino

แยกวิเคราะห์ข้อมูลจากอินเทอร์เน็ตบน Arduino



สวัสดีทุกคนในเรื่องนี้ ทำที่บ้าน ฉันจะแสดงวิธีที่คุณสามารถสร้างเครื่องมือวิเคราะห์ข้อมูลที่ใช้แพลตฟอร์มราคาถูกเรียบง่าย แต่ในเวลาเดียวกันได้อย่างมีประสิทธิภาพจากอินเทอร์เน็ต Arduino พร้อมโมดูล Wifi ด้วยคุณสามารถค้นหาข้อมูลเกือบทุกอย่างจากเครือข่ายภายในไม่กี่วินาที นี่อาจเป็นจำนวนสมาชิกใน youtube จำนวนข้อความขาเข้าไม่ว่าพวกเขาจะเผยแพร่ผลิตภัณฑ์โฮมเมด ฯลฯ

นี่คือแผนภาพง่าย ๆ ในการรวบรวม



ก่อนที่จะเริ่มอ่านบทความฉันขอแนะนำให้ดูวิดีโอที่แสดงความเป็นไปได้ของงานโฮมเมดและการใช้งานจริง



เราจะต้อง:
- แพลตฟอร์มนี้ใช้ตระกูล ESP ในกรณีของฉันและนี่คือ WeMos D1 R2

- จอ LCD แสดงผลข้อมูลฉันมี LCD 1602 ที่เป็นที่นิยมพร้อมโมดูล I2C
- สายและปุ่ม (แม้ว่าคุณอาจไม่ต้องการมัน)
เช่นกัน
- สาย USB (สำหรับการดาวน์โหลดเฟิร์มแวร์)
จุดเชื่อมต่อ Wi-Fi
- ตัวเลือก
- เว็บไซต์และโดเมนของตัวเอง (สำหรับการจัดการข้อความค้นหาที่ซับซ้อนของไซต์ยอดนิยม)

ก่อนดำเนินการขั้นตอนถัดไปตรวจสอบให้แน่ใจว่าสภาพแวดล้อมที่คุณจะดาวน์โหลดภาพร่างได้รับการสนับสนุนโดยตระกูลไมโครคอนโทรลเลอร์ ESP. ในการกำหนดค่า Arduino IDE ให้ไปที่ habr และทำตามคำแนะนำในการติดตั้ง การเชื่อมโยง:
https://habr.com/ru/post/371853/


คำอธิบายรายละเอียดการผลิต:
ตามอัตภาพขั้นตอนสามารถแบ่งออกเป็น 2 ส่วน
1 การชุมนุมของส่วน "เหล็ก"
2 ดาวน์โหลดโปรแกรมและกำหนดค่า

การชุมนุมในระยะแรกจบลงอย่างรวดเร็ว เรารวบรวมมันจากภาพด้านบนและนั่นแหละ
โมดูลแสดงผล
VCC - 5V
GND - GND
SCL - D15
SDA - D14

Buttun - GND ถึง D7

การตั้งค่าทั้งหมดเหล่านี้สามารถเปลี่ยนแปลงได้ในแบบร่างตัวเองหากคุณมีแพลตฟอร์มหรือรุ่นอื่นของไมโครคอนโทรลเลอร์

ขั้นตอนที่สองนั้นซับซ้อนกว่าเล็กน้อยเปิด Arduino IDE เลือกบอร์ดที่เหมาะสมและระบุพอร์ตที่ตั้งอยู่ ในกรณีของฉันบอร์ด: WeMos D1 R1 และพอร์ต 3
แยกวิเคราะห์ข้อมูลจากอินเทอร์เน็ตบน Arduino

การตั้งค่าอื่น ๆ ทั้งหมดสามารถปล่อยไว้ตามค่าเริ่มต้น
ร่างเอง:

โปรดทราบว่าคุณต้องมีห้องสมุดเพิ่มอีก 2 แห่งติดตั้งเหล่านี้คือ ArduinoJson.h และ LiquidCrystal_I2C.h !

จากนั้นเราเปลี่ยนตัวแปรสำคัญในการตั้งค่าร่างเหล่านี้คือ SSID (ชื่อของจุด Wifi) และรหัสผ่าน (รหัสผ่านของจุด Wifi)

หลังจากนั้นคุณสามารถดาวน์โหลดเฟิร์มแวร์ได้
หากเชื่อมต่อจอแสดงผลถูกต้องแล้วข้อมูลต่อไปนี้จะปรากฏขึ้นมา

หากสิ่งนี้ไม่เกิดขึ้นตรวจสอบการตั้งค่าต่อไปนี้

โปรดป้อนที่อยู่ I2C ที่ถูกต้อง ไม่ว่าในกรณีใดจะเป็นการดียิ่งขึ้นเป็นครั้งแรกหลังจากดาวน์โหลดภาพร่างเพื่อเปิดพอร์ตอนุกรมและตรวจสอบให้แน่ใจว่าการเชื่อมต่อได้รับการสร้างเรียบร้อยแล้ว

หากไม่เกิดขึ้นให้ตรวจสอบข้อมูลของจุด WiFi อีกครั้ง

หากทุกอย่างสามารถบู๊ตและเชื่อมต่อได้สำเร็จจากนั้นบนหน้าจอคุณควรเห็นสิ่งต่อไปนี้:

นอกจากนี้คุณยังสามารถคลิกที่ปุ่มและตรวจสอบว่าข้อมูลได้รับการปรับปรุงหรือไม่ (ถ้าคุณเชื่อมต่อ)
ทุกอย่างในขั้นตอนนี้ 95% ของงานเสร็จแล้วมันยังคงเป็นเพียงเพื่อระบุในการกำหนดค่าข้อมูลที่จะต้องแยกวิเคราะห์ พวกเขาทั้งหมดอยู่ในค่าคงที่ "A"
const String A = "http://jsonplaceholder.typicode.com/users/1,name,User 1 :; http: //jsonplaceholder.typicode.com/users/2,name,User 2:;";

ดังนั้นไวยากรณ์สำหรับการเขียนจึงง่าย แหล่งที่มาทั้งหมดจะถูกแบ่งออกเป็นกลุ่มคั่นด้วยอัฒภาค (;)
แต่ละกลุ่มประกอบด้วย 3 ตัวแปรหลักนี้
- URL ที่คำขอจะไป
- ค่าที่จะดึง
- แสดงข้อความเพิ่มเติม
ด้วยวิธีนี้
http://jsonplaceholder.typicode.com/users/1,name,User 1:
==
URL = http://jsonplaceholder.typicode.com/users/1
KEY = ชื่อ
text = "ผู้ใช้ 1:"

หากคุณไปที่ลิงค์ตอนนี้
http://jsonplaceholder.typicode.com/users/1
จากนั้นคุณสามารถดูข้อมูลต่อไปนี้

ที่จริงแล้วคุณสามารถดูว่าค่า "ชื่อ" มาจากไหน

ดังนั้นคุณสามารถดึงข้อมูลจากเว็บไซต์ง่าย ๆ ได้แล้ว แต่วิธีนี้ไม่เหมาะสำหรับการทำงานกับไซต์ "ร้ายแรง" ที่ทำงานกับใบรับรอง SSL ซึ่งตรวจสอบคำขอและแสดง captcha ใด ๆ หากพวกเขาไม่ชอบอะไรและนอกจากนี้การส่งออกข้อมูลมีความซับซ้อนเกินกว่าที่จะประมวลผลโดยกองกำลัง arduino " อย่างที่ฉันไม่ได้พยายาม "หลีกเลี่ยง" ทั้งหมดนี้ แต่มีบางสิ่งที่อาจไม่เสถียรหรือไม่ทำงานเลย การปรับปรุงใบรับรองอย่างต่อเนื่องไม่ได้ช่วยอะไรมาก ดังนั้นอย่างที่ฉันเชื่อว่าทางออกที่เหมาะสมที่สุดคือการสร้างเว็บไซต์ของคุณเอง "ภายใน" ซึ่งคำขอทั้งหมดเหล่านี้จะถูกดำเนินการประมวลผลและแสดงผลโดยตัว Arduino เองในรูปแบบ "ง่าย" วิธีการสร้างเว็บไซต์มีบทความ / วิดีโอ / ฟอรัมมากมายในเวลานี้ไม่มีปัญหา สมมติว่าคุณมีแล้วอัปโหลดไฟล์ต่อไปนี้ เรียกมันว่าสิ่งที่คุณชอบเอาล่ะสมมติว่า "pars.php"


เหมาะสำหรับหัวข้อ

หัวข้อที่เกี่ยวข้อง

เพิ่มความคิดเห็น

    • รอยยิ้มรอยยิ้มxaxaตกลงdontknowyahooNea
      นายรอยขีดข่วนคนโง่ใช่ใช่ใช่ก้าวร้าวลับ
      ขอโทษเต้นdance2dance3ให้อภัยช่วยเหลือเครื่องดื่ม
      หยุดเพื่อนดีgoodgoodนกหวีดหน้ามืดตามัวลิ้น
      ควันการตบมือเครย์ประกาศเป็นขี้ปากดอน t_mentionดาวน์โหลด
      ความร้อนโมโหlaugh1ภาคตะวันออกเฉียงเหนือประชุมmoskingเชิงลบ
      not_iข้าวโพดคั่วลงโทษอ่านทำให้ตกใจกลัวค้นหา
      ยั่วยุthank_youนี้to_clueumnikรุนแรงเห็นด้วย
      ไม่ดีbeeeblack_eyeblum3หน้าแดงโม้ความเบื่อ
      เซ็นเซอร์การหยอกล้อsecret2ขู่ชัยชนะYusun_bespectacled
      shokrespektฮ่า ๆprevedยินดีต้อนรับkrutoyya_za
      ya_dobryiผู้ช่วยne_huliganne_othodiFLUDห้ามใกล้

เราแนะนำให้คุณอ่าน:

มอบให้กับสมาร์ทโฟน ...