2017-01-24 1 views
-1

Ich automatisiere diese irctc Website als Hände auf Selen-Webdriver.Ist es möglich, den Captcha-Code mit selen webdriver zu automatisieren?

Es fragt mich nach Captcha-Code mit Benutzername und Passwort. Gibt es trotzdem den Captcha Code zu automatisieren?

+1

Der Grund für die Verwendung eines Captchas besteht darin, sicherzustellen, dass die Site ** nicht ** automatisiert ist, aber von einem echten Menschen benutzt wird ... Wenn es also einen (einfachen) Weg gäbe, gäbe es keinen Zeigen Sie auf Captchas. Ihre einzige Chance wäre, dass die Seite neben der Benutzeroberfläche, die Sie zu automatisieren versuchen, eine Art API anbietet. – Fildor

+1

Im Allgemeinen sollte es nicht möglich sein, Captchas existieren, um sicherzustellen, dass die Website von einem Menschen und nicht von einem Roboter genutzt wird. In Ihrem speziellen Fall wäre es mit einer einfachen OCR-Bibliothek möglich. Die Website, auf die du dich beziehst, hat eine sehr schlechte Captcha-Implementierung: Captchas sollten für Computer schwer zu erraten sein, aber diese ist mit etwas OCR leicht zu hacken. – BackSlash

+0

Warum unten abstimmen? Ich bin neu auf dieser Seite und suche nur nach einer Antwort. –

Antwort

0

Sie haben offensichtlich nicht verstanden, was CAPTCHA ist; from WikiPedia:

A CAPTCHA (a backronym für „Completely Automated öffentlichen Turing-Test Neben Computer und Menschen zu sagen“) ist eine Art von Challenge-Response-Test bei der Berechnung verwendet, um festzustellen, ob der Benutzer ein Mensch ist.

Wie bereits in anderen Antworten und Kommentaren erwähnt, gibt es mehrere mögliche Angriffe, um dies zu besiegen. Sie können Links zu mehreren anderen Optionen von derselben WikiPedia page erhalten. Beachten Sie jedoch, dass all dies eher ein Proof-of-Concept als eine Out-of-the-Box-Lösung ist.

Da Sie Ihre Frage mit Selenium getaggt haben, ist es möglich, dass Sie dieses in einer Umgebung verwenden, die Sie wie Testumgebung bei Ihrer Arbeit steuern. In einem solchen Szenario ist es am einfachsten, wenn Sie Ihre Entwickler bitten, ein "Test" -Flag für Bereitstellungen außerhalb der Produktion einzuführen. Wenn dieses Flag aktiv ist, wird eine vordefinierte Phrase das CAPTCHA immer zu Testzwecken passieren. Sie sollten jedoch immer noch einen Vollpass-Test durchführen, bei dem alles wie bei einer echten Produktion eingeschaltet ist.

0

1.try importieren Sie diese Javasc ocr Lib oder andere ocr lib. https://github.com/antimatter15/ocrad.js

2.Read das Ergebnis und wählen Sie nur Großbuchstaben char

+0

Hallo @Shyrock Gou, habe ich oben Lösung versucht, aber es hat nicht funktioniert für mich. –

0

Es gibt keinen richtigen Weg Captcha zu automatisieren Selenium WebDriver verwenden. Die einzige Möglichkeit, ein automatisiertes Testskript mit Captcha auszuführen, ist eine ausreichende Verzögerung, wenn das Captcha angezeigt wird, so dass ein Mensch es auf dem bereitgestellten Feld eingeben kann.

Verwandte Themen