Heim  >  Artikel  >  Backend-Entwicklung  >  Verifizierungscode für die Python-Einstiegsidentifizierung

Verifizierungscode für die Python-Einstiegsidentifizierung

迷茫
迷茫Original
2017-03-25 17:07:041681Durchsuche

Vorläufige Informationen: Der in diesem Artikel erwähnte Inhalt wurde von der Bloggerin in den letzten Sommerferien erstellt. Ich habe mich in diesem Urlaub glücklicherweise nicht so sehr niedergelassen, dass ich mehr Freizeit habe, dachte ich Ich könnte so viel schreiben, wie ich möchte, deshalb ist dieser Artikel hier.

Bestätigungscode? Kann ich es auch knacken?

Ich werde nicht viel über die Einführung von Bestätigungscodes sagen, die von Zeit zu Zeit im Leben der Menschen auftauchen. Der Blogger ist ein Student der Northeastern University und derjenige, mit dem er am häufigsten Kontakt hat ist die Abteilung für akademische Angelegenheiten. Habe den Systembestätigungscode erhalten.
Der Bestätigungscode von Dongda wurde von Schülern beanstandet. Es ist nicht nur wichtig, dass die Groß-/Kleinschreibung beachtet wird, sondern manchmal wird auch eine Fehlermeldung angezeigt auftauchen. 禁止你的左键复制(Das Büro für akademische Angelegenheiten hat jedoch im Studienjahr 2016-17 den Inhalt des Verifizierungscodes geändert, um die Bedienung für Menschen komfortabler zu gestalten.)

Es ist ersichtlich, dass der Verifizierungscode von Das Büro für akademische Angelegenheiten ist sehr regelmäßig und die Größe jedes Buchstabens und jeder Zahl Die Position, Form usw. sind alle festgelegt, was für Anfänger geeignet ist, die keine Grundlage für die Identifizierung von Verifizierungscodes haben.

Identifikationsmethode

Die simulierte Anmeldung umfasst komplizierte Schritte. Hier ignorieren wir andere Vorgänge und sind nur für die Rückgabe einer Antwortzeichenfolge basierend auf einem Eingabebestätigungscodebild verantwortlich.

Wir wissen, dass der Verifizierungscode das Bild bunt macht, um Störungen zu erzeugen, und wir müssen diese Störungen zunächst beseitigen. Dieser Schritt erfordert kontinuierliches Experimentieren, die Verbesserung der Bildfarbe, die Erhöhung des Kontrasts usw . kann helfen.

Nach verschiedenen Bildmanipulationen habe ich endlich eine perfektere Lösung zur Beseitigung von Störungen gefunden. Es ist ersichtlich, dass wir nach dem Entfernen der Interferenzen unter optimalen Umständen ein sehr reines Schwarz-Weiß-Zeichenbild erhalten. Ein Bild enthält vier Zeichen. Es ist unmöglich, alle vier Zeichen gleichzeitig zu erkennen. Das Bild muss so zugeschnitten werden, dass jedes kleine Bild nur ein Zeichen enthält, und dann wird jedes Bild einzeln erkannt.

Der nächste Schritt besteht darin, den Text zu erkennen. Wir konvertieren zunächst das erhaltene kleine Bild in eine durch 01 dargestellte Matrix. Jede Matrix repräsentiert ein Zeichen.

Zum Beispiel die Matrix der Zahl Sechs

num_6=[
0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,1,1,0,0,0,0,0,0,
0,0,0,0,1,1,1,0,0,0,0,0,0,
0,0,0,1,1,1,0,0,0,0,0,0,0,
0,0,0,1,1,0,0,0,0,0,0,0,0,
0,0,1,1,0,0,0,0,0,0,0,0,0,
0,0,1,1,0,0,0,0,0,0,0,0,0,
0,1,1,1,1,1,1,1,0,0,0,0,0,
0,1,1,1,1,1,1,1,1,0,0,0,0,
0,1,1,0,0,0,0,1,1,1,0,0,0,
0,1,1,0,0,0,0,0,1,1,0,0,0,
0,1,1,0,0,0,0,0,1,1,0,0,0,
0,1,1,1,0,0,0,1,1,1,0,0,0,
0,0,1,1,1,1,1,1,1,0,0,0,0,
0,0,0,1,1,1,1,1,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,
]
Wenn man sie aus der Ferne betrachtet, kann man sie noch erkennen, wenn man schielt.

Da der Bestätigungscode des Büros für akademische Angelegenheiten der Dongda-Universität sehr regelmäßig ist und die Position jeder Zahl festgelegt ist, ist kein maschineller Lernalgorithmus erforderlich. Es handelt sich lediglich um einen einfachen Matrixvergleich die Matrix mit der höchsten Ähnlichkeit unter allen implementierten Matrizen. Es gibt hier jedoch verschiedene Vergleichsmethoden, solange die Daten einfach sind und korrekt identifiziert werden können.

An diesem Punkt ist unsere Arbeit zur Identifizierung des Bestätigungscodes abgeschlossen.

Zusammenfassung

Die diesmal durchgeführte Bestätigungscode-Erkennung verwendet hauptsächlich Pythons PIL zur Bildmanipulation. Den vollständigen Code zum Simulieren der Anmeldung und zum automatischen Ausfüllen des Bestätigungscodes finden Sie unter

xfangfangs Github

Das obige ist der detaillierte Inhalt vonVerifizierungscode für die Python-Einstiegsidentifizierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Wie Crawler funktionierenNächster Artikel:Wie Crawler funktionieren