Heim  >  Artikel  >  Backend-Entwicklung  >  Code zur Identifizierung der Einstiegsebene des Python-Crawlers

Code zur Identifizierung der Einstiegsebene des Python-Crawlers

PHPz
PHPzOriginal
2017-03-05 13:48:382312Durchsuche

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 201Code zur Identifizierung der Einstiegsebene des Python-Crawlers–17 den Inhalt des Verifizierungscodes geändert, um die Bedienung für Menschen komfortabler zu gestalten.)

Es ist ersichtlich, dass der Verifizierungscode des Academic Affairs Office sehr streng ist. Es gibt Regeln und die Größe, Position, Form usw. jedes Buchstabens und jeder Zahl sind festgelegt, was für Anfänger geeignet ist, die keine Grundlage für die Identifizierung von Verifizierungscodes haben.

Identifizierungsmethode

Die simulierte Anmeldung umfasst komplizierte Schritte. Hier sind wir unabhängig von anderen Vorgängen nur für die Rückgabe einer Antwortzeichenfolge basierend auf einem Eingabebestätigungscodebild verantwortlich.

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

Nach verschiedenen Bearbeitungen der Bilder 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 wandeln zunächst das erhaltene kleine Bild in eine durch 01 dargestellte Matrix um, wobei jede Matrix ein Zeichen darstellt.

Zum Beispiel die Matrix der Zahl Sechs

num_Code zur Identifizierung der Einstiegsebene des Python-CrawlersCode zur Identifizierung der Einstiegsebene des Python-Crawlers[
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 unterscheiden, 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.

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