Nu vom merge departe să urmăm exemplul și să scriem parserul de conținut din "Hacker". După cum știți, site-ul revistei noastre nu oferă acum niciun API pentru a primi în mod programatic articole, altele decât RSS. Cu toate acestea RSS nu este întotdeauna convenabil și nu oferă toate informațiile necesare. Să rezolvăm asta!
Formularea problemei
Răspunsul ar trebui să fie:
Cadrul pentru web
WrapAPI este un serviciu destul de nou (un vechi de câteva luni) pentru construirea de parseri web personalizați și furnizarea de acces API la ele. Nu vă speriați, dacă nu înțelegeți nimic, acum voi explica pe degetele mele. Funcționează astfel:
Puțin despre confidențialitatea cererilor
Probabil că v-ați gândit deja cât de sigur este să folosiți serviciul altcuiva și să îi transmiteți parametrii cererilor lor cu date private. În plus, în mod implicit, pentru fiecare nou proiect API, va fi creat un depozit public și oricine va putea lansa API-ul din acesta. Nu totul este atât de rău:
gătire
Câțiva pași simpli înainte de a începe.
- Mergem la site-ul WrapAPI. creați un nou cont și conectați-l.
- Instalați extensia pentru Chrome (orice browser bazat pe Chrome este potrivit), deschideți Consola pentru dezvoltatori și vedeți noua filă WrapAPI.
- Trecem la el și suntem conectați.
Vom avea nevoie de această extensie pentru a intercepta cererile pe care le vom emula și le vom transmite rapid la WrapAPI pentru o muncă ulterioară. În mod logic, această extensie este foarte asemănătoare cu Burp Proxy + Burp Intruder.
Ne prindem cererile
Acum trebuie să specificați WrapAPI ce solicitare HTTP vom folosi pentru a construi API-ul nostru. Mergem la site-ul "Hacker" și deschideți Consola pentru dezvoltatori trecând la fila WrapAPI.
Solicitările care sunt generate prin clic pe link-urile paginatorului vor fi folosite ca eșantion Cereți prins, salvați-l pe serverul WrapAPIConfigurați WrapAPI
Prezentare generală a viitorului nostru APIAccesați fila Intrări și solicitare. Aici trebuie să specificăm care parametri WrapAPI ar trebui să parseze pagina solicitată pentru ca serverul să îi dea un răspuns valid.
Configurați parametrii de intrare ai interogăriiAntetele de cerere de mai jos nu pot fi atinse, am folosit standardul de la Chromium. Dacă parsarea nu este "Hacker", ci date de la un server închis, puteți înlocui modulele cookie necesare, anteturile, basic-auth și tot ce este necesar. Într-un cuvânt, puteți configura cererea dvs. astfel încât serverul să vă ofere conținut fără suspiciune.
Expunem parametrii POST necesari în formatul de format / urlencoded, astfel încât interogarea noastră a funcționat corectAflați WrapAPI pentru funcții lipsă
Acum trebuie să specificați WrapAPI, cum să procesați rezultatul și cum să îl reprezentați. Accesați fila următoare - Ieșiri și răspuns.