Здраствуйте!
Передо мной стала проблема фрейма. Писал программу которая по замыслу должна автоматически заходить на веб страницу и с конечной страницы вытащить мне html данные, т.к. html код содержит необходимую мне информацию.
Option Explicit On
Imports System.IO
Imports System.Net
Imports System.Text
Public Class MailRequest
Public Sub subRequest()
Try
Dim myHttpWebRequest As HttpWebRequest = HttpWebRequest.Create("......../login.php")
myHttpWebRequest.UserAgent = "Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.6.30 Version/10.61"
myHttpWebRequest.Accept = "text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1"
myHttpWebRequest.Headers.Add("Accept-Language", "ru-RU,ru;q=0.9,en;q=0.8")
myHttpWebRequest.ContentType = "text/html; charset=utf-8"
Dim myHttpWebResponse As HttpWebResponse = myHttpWebRequest.GetResponse()
Dim strCookies As String = ""
If Not String.IsNullOrEmpty(myHttpWebResponse.Headers("Set-Cookie")) Then
strCookies = myHttpWebResponse.Headers("Set-Cookie")
End If
myHttpWebRequest = HttpWebRequest.Create("......./redirect.php")
myHttpWebRequest.Method = "POST"
myHttpWebRequest.Referer = "......./login.php"
myHttpWebRequest.UserAgent = "Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.6.30 Version/10.61"
myHttpWebRequest.Accept = "text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1"
myHttpWebRequest.Headers.Add("Accept-Language", "ru-RU,ru;q=0.9,en;q=0.8")
myHttpWebRequest.ContentType = "application/x-www-form-urlencoded"
If Not String.IsNullOrEmpty(strCookies) Then
myHttpWebRequest.Headers.Add(HttpRequestHeader.Cookie, strCookies)
End If
myHttpWebRequest.AllowAutoRedirect = False
Dim sQueryString As String = "login_username=strLogin&secretkey=strPassword&js_autodetect_results=1&just_logged_in=1&button=login"
Dim ByteArr As Byte() = System.Text.Encoding.GetEncoding(1251).GetBytes(sQueryString)
myHttpWebRequest.ContentLength = ByteArr.Length()
myHttpWebRequest.GetRequestStream().Write(ByteArr, 0, ByteArr.Length)
myHttpWebResponse = myHttpWebRequest.GetResponse()
myHttpWebRequest = HttpWebRequest.Create("....../webmail.php")
myHttpWebRequest.Referer = "......./login.php"
myHttpWebRequest.UserAgent = "Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.6.30 Version/10.61"
myHttpWebRequest.Accept = "text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1"
myHttpWebRequest.Headers.Add("Accept-Language", "ru-RU,ru;q=0.9,en;q=0.8")
myHttpWebRequest.ContentType = "application/x-www-form-urlencoded"
If Not String.IsNullOrEmpty(strCookies) Then
myHttpWebRequest.Headers.Add(HttpRequestHeader.Cookie, strCookies)
End If
myHttpWebResponse = myHttpWebRequest.GetResponse()
Dim myStreamReader As New StreamReader(myHttpWebResponse.GetResponseStream, Encoding.GetEncoding(1251))
console.writeline = myStreamReader.ReadToEnd()
Catch ex As Exception
MessageBox.Show(ex.ToString)
End Try
End Sub
End Class
А как можно получить html код фрейма (left.php & right.php)?
P.S.При анализе с помощью HTTP analyzer(т.е. когда захожу в ручном режиме) сразу со страницей webmail.php загружаются left.php и right.php. Когда запускаю прогу то она дальше страницы с webmail.php не идет. Пробовал сразу после загрузки webmail.php загрузить right.php или left.php после чего прога зависает.