Heim > Artikel > WeChat-Applet > Ein kleines Programm, das die Anmeldung beim akademischen Verwaltungssystem simuliert, um den Notendurchschnitt zu berechnen
Nachdem ich ein paar kleine Spiele gespielt hatte, wurde mir langsam klar, dass das Eingeben von Code eine körperliche Arbeit ist und man sie langsam bewältigen kann. In den letzten Tagen verspürte ich den Drang, ein kleines Programm zu schreiben, das das Einloggen in das akademische Verwaltungssystem simuliert, um den Notendurchschnitt zu berechnen. Allerdings hatte ich zuvor noch keine Erfahrung in der Netzwerk-Programmierung und so habe ich die viertägigen Ferien nach der Zwischenprüfung genutzt, um die Lücken nach und nach zu schließen.
In letzter Zeit hege ich eine unerklärliche Vorliebe für die Sprache Java. Ich hatte ursprünglich vor, Java für die Entwicklung zu verwenden, aber es stellte sich heraus, dass Java in Bezug auf die Netzwerkprogrammierung problematischer zu sein scheint als Python Das Verwaltungssystem glaubte fälschlicherweise, dass ich eine SQL-Injection durchführte, und blockierte meine IP (...) Von da an beschloss ich, in Python zu schreiben.
# 保存cookie cj = cookielib.LWPCookieJar() cookie_support = urllib2.HTTPCookieProcessor(cj) opener = urllib2.build_opener(cookie_support, urllib2.HTTPHandler) urllib2.install_opener(opener)
Aus der Analyse der beiden obigen Bilder geht hervor, dass die eigentliche Anforderungswebseite lautet: 121.251.19.29/pass.asp
url = '121.251.19.29/pass.asp' h = urllib2.urlopen(url) info = {'UserStyle': 'student', 'user': user, 'password': psw} info = urllib.urlencode(info) req = urllib2.Request(url, info) urllib2.urlopen(req)
Öffnen Sie die angeforderte Webseite und lesen Sie den Quellcode der Ergebnisseite.
Verwenden Sie reguläre Ausdrücke, um alle HTML-Tags zu filtern. Der verbleibende Inhalt wird analysiert. Die Tabelle mit den Ergebnissen weist ein periodisches Muster auf. Extrahieren Sie die Ergebnisse und Credits der entsprechenden Fächer und berechnen Sie schließlich die durchschnittliche Punktzahl und die Notenpunkte.req = urllib2.Request('121.251.19.29/student/asp/Select_Success.asp') resData = urllib2.urlopen(req) res = resData.read() # 读取成绩页面Wenn das Konto oder das Passwort falsch eingegeben wird, schlägt die Anmeldeanforderung natürlich fehl und der Benutzer wird aufgefordert, das Konto und das Passwort erneut einzugeben. Unten habe ich die Konten mehrerer Klassenkameraden zum Testen gefunden.
tag = re.compile('</?[^>]*>') s = re.sub(tag, '', res) # 过滤标签 tmp = s.split()
Nachdem der Account erfolgreich eingeloggt wurde, wurde der Das Kontopasswort wird an meine E-Mail-Adresse gesendet
1.
PHP-Sammlung, simuliertes Login-Forum-Applet_PHP-TutorialAnleitung zum Erstellen des Anmeldevorgangs für die WeChat-MiniprogrammentwicklungBeispiel-Tutorial zur Formularüberprüfung für die Miniprogrammentwicklung4 >Optimieren Sie Ihr WeChat-Miniprogramm
Das obige ist der detaillierte Inhalt vonEin kleines Programm, das die Anmeldung beim akademischen Verwaltungssystem simuliert, um den Notendurchschnitt zu berechnen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!