Hallo,
also wie die Überschrift es bereits verät, habe ich fragen zu httpwebrequest.
Vorweg möchte ich schonmal erwähnen, dass ich sämtliche Tutorials durchgelesen (hier im Forum), anderweitig das Internet bemüht und sogar bei MS über httpwebrequest nachgelesen habe (was allerdings sich am nutzlosesten erwies).
Es geht darum, sich ohne einen Browser auf einen Server anzumelden.
Hier mein Code:
Das einloggen funktioniert soweit, dank den Tutorials. Um mich nun weiter auf andere Seiten bewegen zu können brauche ich den Cookie, der steht nicht im Quelltext. Aber wenn ich mit Mozilla und Live HTTP headers das einlogverfahren mitschneide steht dort ein Cookie.
Ich kann den Cookie nicht auslesen, kann mir da vielleicht jemand einen Tip geben?
Danke im vorraus.
MfG
also wie die Überschrift es bereits verät, habe ich fragen zu httpwebrequest.
Vorweg möchte ich schonmal erwähnen, dass ich sämtliche Tutorials durchgelesen (hier im Forum), anderweitig das Internet bemüht und sogar bei MS über httpwebrequest nachgelesen habe (was allerdings sich am nutzlosesten erwies).
Es geht darum, sich ohne einen Browser auf einen Server anzumelden.
Hier mein Code:
VB.NET-Quellcode
- 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
- Label2.Visible = False
- End Sub
- Private Cookies = New CookieContainer
- Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
- Dim Request As HttpWebRequest = _
- DirectCast(HttpWebRequest.Create("http://www.meineSeite.de"), HttpWebRequest)
- With Request
- .CookieContainer = Cookies
- .Method = "POST"
- .ContentType = "application/x-www-form-urlencoded"
- End With
- Dim logindata As String
- Dim user As String = "email@vb.de"
- Dim pw As String = "meinpw"
- logindata = "form=login&landing=true&email=" & user & "&password=" & pw & "&x=129&y=13"
- Dim Writer As New StreamWriter(Request.GetRequestStream())
- Writer.Write(logindata)
- Writer.Close()
- Request.GetResponse().Close()
- Request = DirectCast(WebRequest.Create("http://www.meineSeite.de/Seite2.html"), HttpWebRequest)
- Request.CookieContainer = Cookies
- Dim Reader As New StreamReader(Request.GetResponse().GetResponseStream())
- Dim quellcode As String
- quellcode = Reader.ReadToEnd()
- Reader.Close()
- TextBox1.Text = quellcode
- Dim Inhalt As String
- Dim Suchwort As String
- Dim index As Integer
- Dim Fund As String = ""
- Inhalt = TextBox1.Text
- Suchwort = user
- ' Nach erfolgreicher Login steht die user_id im Quelltext der Seite
- index = Inhalt.IndexOf(Suchwort, 1)
- If index <> -1 Then
- For i = 1 To Suchwort.Length Step 1
- Fund = Fund + GetChar(Inhalt, index + i)
- Next
- If user = Fund Then
- Label2.Visible = True
- Label2.Text = Fund & "Login OK"
- Else
- Label2.Visible = True
- Label2.Text = "Login fehlgeschlagen."
- End If
- End If
- End Sub
- End Class
Das einloggen funktioniert soweit, dank den Tutorials. Um mich nun weiter auf andere Seiten bewegen zu können brauche ich den Cookie, der steht nicht im Quelltext. Aber wenn ich mit Mozilla und Live HTTP headers das einlogverfahren mitschneide steht dort ein Cookie.
Brainfuck-Quellcode
- http://www.meineSeite.de/
- POST / HTTP/1.1
- Host: www.meineSeite.de
- User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; de; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8
- Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
- Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
- Accept-Encoding: gzip,deflate
- Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
- Keep-Alive: 115
- Connection: keep-alive
- Referer: http://www.meineSeite.de/
- Cookie: PHPSESSID=7205d08fbf11xvjnbgfjkjökhzgf: usw.......blablabla
- Content-Type: application/x-www-form-urlencoded
- Content-Length: 77
- form=login&landing=true&email=email@vb.de&password=meinpw&x=149&y=13
- HTTP/1.1 302 Found
- Date: Mon, 01 Nov 2010 19:24:23 GMT
- Server: Apache
- node: nd01
- Expires: Thu, 19 Nov 1981 08:52:00 GMT
- Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
- Pragma: no-cache
- Location: /Seite2.html
- Vary: Accept-Encoding,User-Agent
- Content-Encoding: gzip
- Content-Length: 20
- Connection: close
- Content-Type: text/html; charset=utf-8
- ----------------------------------------------------------
- http://www.meineSeite.de/Seite2.html
- GET /Seite2.html HTTP/1.1
- Host: www.meineSeite.de
- User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; de; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8
- Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
- Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
- Accept-Encoding: gzip,deflate
- Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
- Keep-Alive: 115
- Connection: keep-alive
- Referer: http://www.meineSeite.de/
- Cookie: PHPSESSID=7205d08fbf11xvjnbgfjkjökhzgf: usw.......blablabla
- HTTP/1.1 200 OK
Ich kann den Cookie nicht auslesen, kann mir da vielleicht jemand einen Tip geben?
Danke im vorraus.
MfG