Lucrul cu CAPTCHA în emulatorul uman

Citat Wikipedia - CAPTCHA (din limba engleză complet automat de testare Turing public pentru a spune Computers and Humans Apart. - Complet automat de testare Turing publice să se facă distincția între calculatoare și oameni) - o marcă de la Universitatea Carnegie - Mellon University, care a dezvoltat un test pe bază de calculator folosit pentru a determina cine este utilizatorul sistemului: o persoană sau un computer.







În Emulator Uman există trei funcții pentru recunoașterea captcha:

recognize_captcha - recunoaște imaginea de pe disc ca captcha
recognize_by_anticaptcha - să recunoască imaginile captcha prin serviciul anti-kapcha
recognize_by_captchabot - pentru a recunoaște imaginea captcha prin intermediul serviciului

Iată câteva exemple de scripturi pentru utilizarea captcha-urilor diferite.

În primul rând, folosim funcția de recunoaștere a codului Captcha de către Emulator uman. De exemplu, luați formularul de înregistrare pe site-ul xanga.com. Acest site folosește captcha de tip 9, pe care Omul se descurcă cu o ghicire corectă de 45%.

Funcția $ image-> recognize_captcha ($ file_path, $ type); pe intrare trece calea spre fișier cu imaginea și tipul imaginii. Prin urmare, înainte de a apela această funcție, trebuie să salvăm imaginea într-un fișier de pe disc. Pentru aceasta, folosim funcția $ image-> screenshot_by_src.







Notă: Este mai bine să lucrați cu imagini pe src sau pe o parte din src. Pentru a vedea src imagine, puteți deschide informațiile cu privire la aceasta în elementele Inspector făcând clic pe butonul din dreapta al mouse-ului si din meniul contextual, selectați „elemente View Inspector“ sau în același meniu, puteți alege să faceți clic în continuare image- $> click_by_src și script-ul introduce funcția de clic cu complet src, de la care va fi posibil să se ia piesa dreapta, care va fi la fel de fiecare dată când e necesară încărcarea paginii.

În acest caz, funcția va fi după cum urmează: $ image-> screenshot_by_src ( "C: \\ Temp \\ tmp.jpeg", "? Fy randletters.aspx", False); Apoi, funcția $ image-> recognize_captcha ("C: \\ Temp \\ tmp.jpeg", 9);

Acum, se adaugă în același script apel la intrare dialog captcha $ str_captcha = $ app-> dlg_captcha_from_url_exactly (false "fy randletters.aspx?"); și un semnalizator variabil pentru setarea lucrării prin recunoaștere sau prin dialogul de intrare. Ca urmare, scriptul nostru va:

Notă: Din păcate, descrierile funcțiilor screenshot_by_ * nu sunt încă disponibile în documentația Emulatorului Uman. Aceste funcții funcționează pentru toate obiectele și le salvează instantaneu pe disc în funcție de calea specificată. Adică poți să faci o imagine a oricărui element al paginii folosind atributul sau atributul elementului. Pentru a apela aceste funcții, puteți utiliza meniul contextual al elementului -> meniul "Salvare" și selectați funcția dorită din lista care apare.

și funcții de apelare pentru servicii de recunoaștere:

unde $ api_key este cheia serviciului de recunoaștere

Vom încheia toate apelurile pentru a recunoaște captcha în instrucțiunea comutator și a adăuga un semnalizator pentru a selecta mecanismul de recunoaștere. Acum scriptul nostru va arata astfel:







Trimiteți-le prietenilor: