Cuprins:
2025 Autor: John Day | [email protected]. Modificat ultima dată: 2025-01-13 06:58
În acest tutorial vă voi arăta cum să faceți căutări pe Google cu un ESP32. Rezultatul în sine nu este foarte util deoarece rezultatele căutării se află pe monitorul serial de pe computer, dar este un lucru interesant de făcut și care arată puterea ESP32. Codul poate fi îmbunătățit pentru a crea un mini browser web pe ESP32 și a imprima rezultatul pe un ecran LCD, de exemplu.
În acest tutorial, voi folosi o placă ESP32 cu 4 MB de PSRAM pentru a fi sigur că aveți suficientă memorie. Acest lucru poate fi util pentru a descărca codul html al site-urilor găsite.
Provizii
- Placă ESP32 cu memorie RAM externă precum uPesy ESP32 Wrover DevKit
- Arduino IDE sau PlatformIO cu extensia esp32 instalată
- Un Cont Google
Pasul 1: Descărcați fișierul HTML sau fișierul JSON: modul bun și cel rău
Cel mai simplu mod de a prelua căutările pe Google ar fi să descărcați pagina HTML de pe adresa URL: https://www.google.com/search?q=esp32, cu interogarea dvs. după q =
Acesta este calea proastă din câteva motive:
- Este dificil de analizat (extrage date), deoarece nu există un analizor HTML pentru ESP32. Deci, trebuie să găsiți eticheta HTML potrivită, să extrageți șiruri, …: codul va fi dezordonat.
- Nu este eficientă în ceea ce privește datele: trebuie să descărcați întreaga pagină HTML cu scripturi javascript și css numai pentru a extrage mici informații. Dimensiunea paginii HTML este de aproximativ 300 KB, ESP32 nici măcar nu are suficientă memorie pentru a descărca pagina html simultan (posibil doar cu PSRAM extern).
- Ați putea fi inclus pe lista neagră de Google: dacă faceți prea multe cercetări rapid, Google vă va considera un bot și noroc rezolvând un captcha pe ESP32.
Modul bun este să utilizați API-ul de căutare Google care returnează un fișier JSON. Un fișier JSON poate fi analizat cu ușurință pe ESP32 cu biblioteci precum ArduinoJson. Cu această metodă va fi foarte ușor să extrageți rezultatele căutării.
Pasul 2: Creați un motor de căutare
Mai întâi, trebuie să creăm un motor de căutare personalizat în contul dvs. Google:
- Accesați
- Adăugați www.google.com la „Site-uri de căutat”
- Schimbați limba dacă doriți
- Denumiți motorul de căutare și dați clic pe „Creați”
Pasul 3: Configurarea motorului de căutare
Accesați panoul de control al motorului de căutare pentru a modifica parametrii:
- Activați „Căutați pe întregul web”
- Puteți schimba limba sau regiunea, puteți activa imaginile
- Obțineți codul motorului de căutare, acesta va fi util pentru pașii următori
Derulați în jos până la „Acces programatic” și faceți clic pe „Începeți”
Pasul 4: obțineți cheia API
Ar trebui să vă aflați acum pe site-ul
- Faceți clic pe „Obțineți o cheie”
- Introduceți un nume de proiect
- Copiați cheia API
Pasul 5: testați API
Acum putem testa API-ul, URL-ul este după cum urmează:
customsearch.googleapis.com/customsearch/v1?key=YOUR_API_KEY&cx=YOUR_SEARCH_ENGINE_ID&q=esp32
Înlocuiți „YOUR_API_KEY” și „YOUR_SEARCH_ENGINE_ID” cu ale dvs.
În browserul dvs. web, accesați această adresă URL, ar trebui să vedeți ca rezultat un fișier Json cu rezultatele căutărilor Google, cum ar fi în captura de ecran.
Lista tuturor parametrilor este disponibilă aici
Pasul 6: Instalați ArduinoJson Library
Pentru a analiza fișierul JSON, vom folosi biblioteca ArduinoJson.
Mergeți la Manager bibliotecă în Arduino IDE și tastați ArduinoJson. Instalați biblioteca potrivită „ArduinoJson by Benoit Blanchon”.
Felicitări, toate configurațiile sunt gata.
Pasul 7: Descărcați schița și căutați pe Google
Pentru acest ultim pas:
- Descărcați schița.
- Adăugați codurile dvs. WiFi, cheia API și ID-ul motorului.
- Compilați schița și utilizați monitorul serial pentru a trimite interogarea dvs.
Mai multe tutoriale pe site-ul meu: upesy.com