Hi,
hier mal ein Tutorial aus meinem Board, es wurde vom Benutzer "Igoe" geschrieben
Heute möchte ich euch zeigen wie man sich auf einer Seite mit der HttpWebRequest Klasse einloggt
(in diesem fall www.vb-community.eu), und somit guckt ob der Login für die Seite Funktioniert.
Was wir als erstes brauchen:
Live HTTP Headers (Download):
https://addons.mozilla.org/de/firefox/addon/3829
Wir gehen als erstes mal auf die Seite www.vb-community.eu, dort sehen wir dann den Link
„Anmelden“ – Auf diesen link klicken wir einmal mit dem Mausrad drauf.
Wenn ihr da drauf geklickt habt seht ihr den Login für vb-community!
Aber bevor wir weiter machen starten wir erst mal LiveHttpHeaders!
Dazu geht ihr unter Firefox > Extras > Live http Headers.
Dabei müsst ihr darauf achten das bei Mitschneiden der Haken gesetzt ist.
So jetzt habt ihr die Grundlage um den Post mit zuschneiden. Aber ihr müsst Live http Headers geöffnet lassen!
Jetzt braucht ihr einen Account zu der Seite dessen du Checken willst.
Ihr gebt die Account Daten ein und drückt Anmelden.
(Bitte achtet darauf dass Live http Header offen ist!)
Jetzt hat euer Live http Headers natürlich den Post mit geschnitten, und das sieht dann so aus:
Hier geht ihr auf „Alles Speichern“ und Speichert es, somit wir jetzt zum Code kommen
Als erstes Importieren wir:
[vb]Imports System.IO, System.Net, System.Text[/vb]
Jetzt Deklarieren wir erstmal 2 Variablen, nämlich User & pwd. (im Form_Load)
Als nächtest kommt der Teil des Codes wo wir angeben auf welcher Webseite wir uns einloggen wollen.
machen wir zu:
Da das die Url ist unter der mann sich einloggen kann.
Die Url Findet mann heraus indem man rechtsklick auf „Anmelden“ macht und dann auf link-adresse kopieren!
Jetzt fügt ihr noch Method & Content Type hinzu:
Status:
Nun fügen wir noch mal einen dicken Blog ein.
In der Variable „Post“ steht der Post, jetzt öffnet ihr die Textdatei die ihr vorher
Gespeichert habt, und guckt mittels Strg+f wo euer Passwort in der Textdatei steht.
Bei mir ist es die reihe unter: „Content-Length:“.
Mein Code ist:
Da wo MEINBENUTZERNAME und MEINPASSWORT steht, da sind normalerweise eure Account Daten!
Diesen Code ändern wir jetzt so dass wir nachher die Account Daten in der Variable User & pwd bestimmen können.
Nämlich in:
Unser Code wo wir den POST festlegen sieht dann so aus:
Jetzt fügen wir nochmal einen dicken blog ein:
Den Quelltext holen wir uns mit:
Dann müsste euer Code so aussehen:
Und jetzt kommen wir endlich zu der schon oben angesprochenen Abfrage ob ein Bestimmtes Word auf der Seite nach dem Einloggen ist. Und da wir uns ja den Quelltext schon geholt habe können wir das auch ganz Bequem via InStr prüfen.
Unser Code lautet daher:
Das: „Sie wurden erfolgreich angemeldet.“ Nehme ich aus dem grund weil die nächste seite die nach dem einloggen kommt diese ist:
Euer Code ganz zum schluss sollte dann so aussehen:
Wenn ihr das Programm jetzt Startet dann bekommt ihr gesagt ob eure Daten richtig sind!
Ich hoffe ihr habt das Tutorial verstanden, und ich konnte euch alles gut übermitteln.
Wenn euch das Tutorial gefallen hat dann gebt mir dafür einfach ein thx!
Link zum Original
Benutzerprofil
Gruß
Icemanns
hier mal ein Tutorial aus meinem Board, es wurde vom Benutzer "Igoe" geschrieben
Heute möchte ich euch zeigen wie man sich auf einer Seite mit der HttpWebRequest Klasse einloggt
(in diesem fall www.vb-community.eu), und somit guckt ob der Login für die Seite Funktioniert.
Was wir als erstes brauchen:
Live HTTP Headers (Download):
https://addons.mozilla.org/de/firefox/addon/3829
Wir gehen als erstes mal auf die Seite www.vb-community.eu, dort sehen wir dann den Link
„Anmelden“ – Auf diesen link klicken wir einmal mit dem Mausrad drauf.
Wenn ihr da drauf geklickt habt seht ihr den Login für vb-community!
Aber bevor wir weiter machen starten wir erst mal LiveHttpHeaders!
Dazu geht ihr unter Firefox > Extras > Live http Headers.
Dabei müsst ihr darauf achten das bei Mitschneiden der Haken gesetzt ist.
So jetzt habt ihr die Grundlage um den Post mit zuschneiden. Aber ihr müsst Live http Headers geöffnet lassen!
Jetzt braucht ihr einen Account zu der Seite dessen du Checken willst.
Ihr gebt die Account Daten ein und drückt Anmelden.
(Bitte achtet darauf dass Live http Header offen ist!)
Jetzt hat euer Live http Headers natürlich den Post mit geschnitten, und das sieht dann so aus:
Hier geht ihr auf „Alles Speichern“ und Speichert es, somit wir jetzt zum Code kommen

[vb]Imports System.IO, System.Net, System.Text[/vb]
Jetzt Deklarieren wir erstmal 2 Variablen, nämlich User & pwd. (im Form_Load)
Code:
Dim User = "", Pwd = ""
Als nächtest kommt der Teil des Codes wo wir angeben auf welcher Webseite wir uns einloggen wollen.
Code:
Dim Request As HttpWebRequest = CType(WebRequest.Create(""), HttpWebRequest)
machen wir zu:
Code:
Dim Request As HttpWebRequest = CType(WebRequest.Create("http://www.vb-community.eu/index.php?form=UserLogin"), HttpWebRequest)
Da das die Url ist unter der mann sich einloggen kann.
Die Url Findet mann heraus indem man rechtsklick auf „Anmelden“ macht und dann auf link-adresse kopieren!
Jetzt fügt ihr noch Method & Content Type hinzu:
Code:
Request.Method = "POST" Request.ContentType = "application/x-www-form-urlencoded"
Status:
Nun fügen wir noch mal einen dicken Blog ein.
Code:
Dim Post As String = ""
Dim byteArray() As Byte = Encoding.UTF8.GetBytes(Post)
Request.ContentLength = byteArray.Length
Dim DataStream As Stream = Request.GetRequestStream()
DataStream.Write(byteArray, 0, byteArray.Length)
DataStream.Close()
In der Variable „Post“ steht der Post, jetzt öffnet ihr die Textdatei die ihr vorher
Gespeichert habt, und guckt mittels Strg+f wo euer Passwort in der Textdatei steht.
Bei mir ist es die reihe unter: „Content-Length:“.
Mein Code ist:
Code:
loginUsername=MEINBENUTZERNAME&loginPassword=MEINPASSWORT&useCookies=1&url=
Da wo MEINBENUTZERNAME und MEINPASSWORT steht, da sind normalerweise eure Account Daten!
Diesen Code ändern wir jetzt so dass wir nachher die Account Daten in der Variable User & pwd bestimmen können.
Nämlich in:
Code:
loginUsername=" & User & "&loginPassword=" & Pwd & "&useCookies=1&url==
Unser Code wo wir den POST festlegen sieht dann so aus:
Code:
Dim Post As String = "loginUsername=" & User & "&loginPassword=" & Pwd & "&useCookies=1&url="
Jetzt fügen wir nochmal einen dicken blog ein:
Code:
Dim byteArray() As Byte = Encoding.UTF8.GetBytes(Post)
Request.ContentLength = byteArray.Length
Dim DataStream As Stream = Request.GetRequestStream()
DataStream.Write(byteArray, 0, byteArray.Length)
DataStream.Close()
Den Quelltext holen wir uns mit:
Code:
Dim Response As HttpWebResponse = Request.GetResponse()
DataStream = Response.GetResponseStream()
Dim reader As New StreamReader(DataStream)
Dim ServerResponse As String = reader.ReadToEnd()
reader.Close()
DataStream.Close()
Response.Close()
Dann müsste euer Code so aussehen:
Und jetzt kommen wir endlich zu der schon oben angesprochenen Abfrage ob ein Bestimmtes Word auf der Seite nach dem Einloggen ist. Und da wir uns ja den Quelltext schon geholt habe können wir das auch ganz Bequem via InStr prüfen.
Unser Code lautet daher:
Code:
If InStr(ServerResponse, "Sie wurden erfolgreich angemeldet.") Then
MessageBox.Show("Login OK")
Else
MessageBox.Show("Login nicht OK")
End If
Das: „Sie wurden erfolgreich angemeldet.“ Nehme ich aus dem grund weil die nächste seite die nach dem einloggen kommt diese ist:
Euer Code ganz zum schluss sollte dann so aussehen:
Code:
Imports System.IO, System.Net, System.Text
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim User = "igoe", Pwd = ""
Dim Request As HttpWebRequest = CType(WebRequest.Create("http://www.vb-community.eu/index.php?form=UserLogin"), HttpWebRequest)
Request.Method = "POST"
Request.ContentType = "application/x-www-form-urlencoded"
Dim Post As String = "loginUsername=" & User & "&loginPassword=" & Pwd & "&useCookies=1&url="
Dim byteArray() As Byte = Encoding.UTF8.GetBytes(Post)
Request.ContentLength = byteArray.Length
Dim DataStream As Stream = Request.GetRequestStream()
DataStream.Write(byteArray, 0, byteArray.Length)
DataStream.Close()
Dim Response As HttpWebResponse = Request.GetResponse()
DataStream = Response.GetResponseStream()
Dim reader As New StreamReader(DataStream)
Dim ServerResponse As String = reader.ReadToEnd()
reader.Close()
DataStream.Close()
Response.Close()
If InStr(ServerResponse, "Sie wurden erfolgreich angemeldet.") Then
MessageBox.Show("Login OK")
Else
MessageBox.Show("Login nicht OK")
End If
End Sub
End Class
Wenn ihr das Programm jetzt Startet dann bekommt ihr gesagt ob eure Daten richtig sind!
Ich hoffe ihr habt das Tutorial verstanden, und ich konnte euch alles gut übermitteln.
Wenn euch das Tutorial gefallen hat dann gebt mir dafür einfach ein thx!
Link zum Original
Benutzerprofil
Gruß
Icemanns
Zuletzt bearbeitet: