Foros del Web » Programación para mayores de 30 ;) » .NET »

Visitar paginas web desde .NET

Estas en el tema de Visitar paginas web desde .NET en el foro de .NET en Foros del Web. Que tal... es posible visitar paginas web desde .NET??? la idea es automatizar un proceso como el siguiente: loguearse al sitio web (el tipico login ...
  #1 (permalink)  
Antiguo 18/09/2005, 10:27
 
Fecha de Ingreso: julio-2004
Ubicación: Quito
Mensajes: 123
Antigüedad: 20 años, 4 meses
Puntos: 0
Visitar paginas web desde .NET

Que tal... es posible visitar paginas web desde .NET??? la idea es automatizar un proceso como el siguiente: loguearse al sitio web (el tipico login y password), acceder a una opcion/servicio, enviar la informacion y procesar el resultado (para mostrarlo al usuario desde un winform), hacer log-out.... es posible que una aplicacion en .Net pueda hacer eso??? vi algo sobre httpwebrequest pero no se como mantener la sesion, osea que continue logueado hasta terminar el proceso....

alguna idea???

saludos
__________________
Guia Telefonica
ecuadorMusical.com
  #2 (permalink)  
Antiguo 18/09/2005, 13:31
 
Fecha de Ingreso: enero-2004
Mensajes: 310
Antigüedad: 20 años, 10 meses
Puntos: 0
Buenas netoec, si que es posible...
Te pasteo un codigo que uso yo para actualizar la ip de mi servidor via web.

Try
ClienteWeb = New System.Net.WebClient
ClienteWeb.BaseAddress = "www.mistrucos.net" 'WEB DONDE KIERES ACTUALIZAR
Dim ContrasenaEnBytes As Byte() = System.Text.Encoding.ASCII.GetBytes(txtContrasena) 'Contraseña k kieres logar
Dim ResultadoMD5 As String = System.BitConverter.ToString(md5CryptoObject.Compu teHash(ContrasenaEnBytes)).Replace("-", "").ToLower()
ClienteWeb.QueryString.Add("enctype", "MD5")
ClienteWeb.QueryString.Add("n", txtUsr.Text) 'usuario
ClienteWeb.QueryString.Add("p", ResultadoMD5)
remoteUri = "onlineService.php" 'WEB REMOTA (Recuerda que ya tienes la baseAdress, x lo k falta definir la pagina
Dim bytesResultado As Byte() = ClienteWeb.DownloadData(remoteUri)
Dim ResultadoSinAnd As String = System.Text.Encoding.ASCII.GetString(bytesResultad o)
ResultadoSinAnd = ResultadoSinAnd.Remove(0, 1)
ResultadoSinAnd = ResultadoSinAnd.Remove((ResultadoSinAnd.Length - 1), 1)
Dim Resultado As String() = System.Text.Encoding.ASCII.GetString(bytesResultad o).Split("&")

Dim Parte As String
For Each Parte In Resultado

If Parte <> "" Then

Dim ResultadoDoble = Parte.Split("=")

Dim SeEjecutoBien As Boolean = True

Select Case ResultadoDoble(0)
Case "resultat"
Select Case ResultadoDoble(1)
Case "errorlogin"
'Me.lstIP.Items.Add("Error con el nombre o contraseña")
Me.tmrActualizador.Enabled = False
SeEjecutoBien = False

Case "badip"
'Me.lstIP.Items.Add("Error con la renovación de la ip")
'MsgBox("La Autentificación fué realizada\ncon éxito; pero la ip fué\nreconocida como inválida")
SeEjecutoBien = False

Case "newip"
'Me.lstIP.Items.Add(Date.Now)
SeEjecutoBien = True

End Select

If SeEjecutoBien = True Then
'Me.lstIP.Items.Add("Actualización Realizada. IP: " & ResultadoDoble(1))
'statusBarIcon.Text="Su dominio esta apuntando a: " + ResultadoDoble[1];
End If

End Select

End If
Next
ClienteWeb.Dispose()
ClienteWeb = Nothing
Catch
ClienteWeb.Dispose()
ClienteWeb = Nothing
End Try

Recuerda que tendras que modificar los nombres de los controles de la web del origen
__________________
Un saludo,
Trucos
Videos
  #3 (permalink)  
Antiguo 19/09/2005, 15:24
 
Fecha de Ingreso: julio-2004
Ubicación: Quito
Mensajes: 123
Antigüedad: 20 años, 4 meses
Puntos: 0
gracias por tu respuesta.... he intentado hacerlo funcionar pero no lo consigo, al parecer es por que uso una direccion tipo https, en el IE te sale ese cuadro de dialogo que te pregunta si deseas confiar, con un WebClient como asumiria que hago click en SI, ahora estoy obteniendo la siguiente mensaje de la exepcion: "webclient could not establish trust relationship with remote server"

Que puedo hacer?

Por otro lado, haciendo otras pruebas me encontre con que al hacer uso de formularios tipo:

Código:
<form method="post" action="xxxxx.aspx">
no obtengo resultados, es por que solo sirve para formularios donde method sea GET???
__________________
Guia Telefonica
ecuadorMusical.com

Última edición por netoec84; 19/09/2005 a las 16:59
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:46.