Panarello 0 Denunciar post Postado Setembro 24, 2008 Entao pessoal estou tentando fazer um Screen Scrapting de uma pagina web (acho q eh assim q fala) estou usando o WebBrowser da seguinte maneira o que estou tentando fazer e varias consultas em uma determinada pagina que tem um campo cpf e um botao de fazer a consulta (que vou chamar de pagina 1) que por sua vez faz um submit e me volta com o resultado (pagina 2) . Atualmente estou usando o WebBrowser assim , eu tenho uma copia da pagina 1 (alterada aonde ao final do carregamento da pagina ele faz um submit automático ) localmente , faco alteração dela inserindo o cpf de forma sequencial e mando meu webbrowser abri-la , ai quando ele completa o carregamento eu faco a leitura da pagina e armazeno os dados que eu quero. Porem ele tem um comportamento anormal depois de algumas milhares de interações Entao vi q poderia usar o HttpWebRequest e HttpWebResponse talvez tivesse algum ganho com eles ao inves de usar toda estrutura do webBrowser So que como eu faco esse mesmo processo usando o HttpWebRequest , outra coisa tem como eu faria mandar um post para a pagina 2 com os dados do campo texto (cpf ) da pagina 1 ? Obs: ele não passa o cpf por QueryString não. Vlw pela ajuda..... Compartilhar este post Link para o post Compartilhar em outros sites
quintelab 91 Denunciar post Postado Setembro 24, 2008 Movido Plataforma .NET http://forum.imasters.com.br/public/style_emoticons/default/seta.gif Plataforma .NET » Web Applications Não tem a necessidade de mandar pra outra página para você fazer o processamento, no evento do seu botão você pode fazer toda validação necessária. Se você quiser passar para o outro formulário você pode passar por url ou armazenar em Session. Abraços... Compartilhar este post Link para o post Compartilhar em outros sites
sublyer 0 Denunciar post Postado Setembro 24, 2008 Você não pode utilizar session ou view state? Outra solução seria você utilizar multi view em sua página aspx, fazendo assim o trabalho em uma página só, não precisando duplicar as páginas. Flwww, té mais Compartilhar este post Link para o post Compartilhar em outros sites
Panarello 0 Denunciar post Postado Setembro 24, 2008 Consegui resolver criei a seguinte classe , e vale resaltar que melhorou 1000% a performance A função que faz a leitura da pagina , voce precisa passar o link da pagina com o Post junto no final. Private Function leituraPaginaSemWebBrowser( ByVal pagina As String) Dim myRequest As HttpWebRequest Dim WebResp As HttpWebResponse Dim Answer As StreamReader 'Dim newStream As Stream Dim retorno As String Dim cookie As String Try myRequest = WebRequest.Create(pagina) myRequest.Method = "POST" myRequest.ContentType = "application/x-www-form-urlencoded" myRequest.AllowAutoRedirect = False myRequest.ContentLength = 0 WebResp = myRequest.GetResponse() Dim headers As WebHeaderCollection = WebResp.Headers If (headers("Set-Cookie") <> Nothing) Then cookie = headers("Set-Cookie") End If Answer = New StreamReader(WebResp.GetResponseStream()) retorno = Answer.ReadToEnd() Return retorno Catch ex As Exception Return "A PAGINA NAO PODE SER CARREGADA" Finally If Not Answer Is Nothing Then Answer.Close() End If End Try End Function Compartilhar este post Link para o post Compartilhar em outros sites