Guten Tag allerseits!
Ich arbeite gerade an einem Programm, mit dem ich mich über POST in eine Seite einloggen kann. Das Problem ist, dass im post ("methodToCall=submit&CSId=1091N47Sc28f346f4b9ce7807341bafeddd214597b532c88&username=USERNAME&password=PASSWORT") ein cookie zu finden ist (User session). Es ist momentan 1091N47Sc28f346f4b9ce7807341bafeddd214597b532c88, ändert sich allerdings alle 5 minuten.
Wie kann ich das umsetzen?
*Topic verschoben*
Ich arbeite gerade an einem Programm, mit dem ich mich über POST in eine Seite einloggen kann. Das Problem ist, dass im post ("methodToCall=submit&CSId=1091N47Sc28f346f4b9ce7807341bafeddd214597b532c88&username=USERNAME&password=PASSWORT") ein cookie zu finden ist (User session). Es ist momentan 1091N47Sc28f346f4b9ce7807341bafeddd214597b532c88, ändert sich allerdings alle 5 minuten.
VB.NET-Quellcode
- Public Class Form1
- Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
- Dim postData As String = "methodToCall=submit&CSId=1091N47Sc28f346f4b9ce7807341bafeddd214597b532c88&username=USERNAME&password=PASSWORT"
- Dim tempCookies As New CookieContainer
- Dim encoding As New UTF8Encoding
- Dim byteData As Byte() = encoding.GetBytes(postData)
- Dim logincookie As CookieContainer
- Dim postReq As HttpWebRequest = DirectCast(WebRequest.Create("https://opac.stadtbibliothek-bremen.de/webOPACClient/login.do"), HttpWebRequest)
- postReq.Method = "POST"
- postReq.KeepAlive = True
- postReq.CookieContainer = tempCookies
- postReq.ContentType = "application/x-www-form-urlencoded"
- postReq.Referer = "https://opac.stadtbibliothek-bremen.de/webOPACClient/login.do"
- postReq.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:40.0) Gecko/20100101 Firefox/40.1"
- postReq.ContentLength = byteData.Length
- Dim postreqstream As Stream = postReq.GetRequestStream()
- postreqstream.Write(byteData, 0, byteData.Length)
- postreqstream.Close()
- Dim postresponse As HttpWebResponse
- postresponse = DirectCast(postReq.GetResponse(), HttpWebResponse)
- tempCookies.Add(postresponse.Cookies)
- logincookie = tempCookies
- Dim postreqreader As New StreamReader(postresponse.GetResponseStream())
- Dim thepage As String = postreqreader.ReadToEnd
- If thepage.Contains("<a href=""/webOPACClient/login.do?methodToCall=logout"" title=""Abmelden"">Abmelden</a>") Then
- MsgBox("Anmelden erfolgreich")
- End If
Wie kann ich das umsetzen?
*Topic verschoben*
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()