Sockets

17/05/2005 - 20:06 por Reynaldo | Informe spam
Hola a todos los del foro, quisiera que alguien me pueda recomendar algun
tutorial o ejemplo para manejar al system.net.sockets, lo que quiero es
obtener el codigo de una pagina web y no se como hacerlo usando esta clase,
una duda sobre esto, usar system.net.sockets es lo mas eficiente?? o existe
otra forma, porque anteriormente en VB 6 yo usaba el winsock pero al usar
muchos la aplicacion se hacia muy pesada por eso tuve que crear una clase y
usar la api del winsock es decir trabajar a un nivel mas bajo de esta forma
todo lo coloque en una dll y funciona muy bien y no es tan pesado, ahora
quiero realizar lo mismo con .NET pero no se por donde empezar a manejar el
system.net.sockets si alguien me puede dar algun ejemplo o sugerir alguna
pagina con informacion al respecto...

Gracias

Preguntas similare

Leer las respuestas

#1 Pedro M.Ferrando Moya
17/05/2005 - 21:18 | Informe spam
Yo uso esto para ver el codigo fuente de una url
Pon estos
Imports System.Net
Imports System.IO

y el código:
Dim oH As HttpWebRequest = WebRequest.Create("aqui pon la url")
Dim oStream As Stream = oH.GetResponse.GetResponseStream
Dim oSReader As New StreamReader(oStream)
Dim sText As String = oSReader.ReadToEnd()
oSReader.Close()
oStream.Close()

y en sText tendrás el HTML






"Reynaldo" escribió:

Hola a todos los del foro, quisiera que alguien me pueda recomendar algun
tutorial o ejemplo para manejar al system.net.sockets, lo que quiero es
obtener el codigo de una pagina web y no se como hacerlo usando esta clase,
una duda sobre esto, usar system.net.sockets es lo mas eficiente?? o existe
otra forma, porque anteriormente en VB 6 yo usaba el winsock pero al usar
muchos la aplicacion se hacia muy pesada por eso tuve que crear una clase y
usar la api del winsock es decir trabajar a un nivel mas bajo de esta forma
todo lo coloque en una dll y funciona muy bien y no es tan pesado, ahora
quiero realizar lo mismo con .NET pero no se por donde empezar a manejar el
system.net.sockets si alguien me puede dar algun ejemplo o sugerir alguna
pagina con informacion al respecto...

Gracias

Respuesta Responder a este mensaje
#2 Reynaldo
18/05/2005 - 18:45 | Informe spam
Hola Pedro, muchas gracias por contestar, parace que de esta forma todo se
simplifica, pero te cuento que el codigo que me diste no me funciona

hay un error en
Dim oH As HttpWebRequest = WebRequest.Create("aqui pon la url")

al colocar entre comillas la URL me da error, intente almacenar la cadena en
una variable pero al colocar la variable tambien me da error, que puedo
hacer???

"Pedro M.Ferrando Moya" wrote:

Yo uso esto para ver el codigo fuente de una url
Pon estos
Imports System.Net
Imports System.IO

y el código:
Dim oH As HttpWebRequest = WebRequest.Create("aqui pon la url")
Dim oStream As Stream = oH.GetResponse.GetResponseStream
Dim oSReader As New StreamReader(oStream)
Dim sText As String = oSReader.ReadToEnd()
oSReader.Close()
oStream.Close()

y en sText tendrás el HTML






"Reynaldo" escribió:

> Hola a todos los del foro, quisiera que alguien me pueda recomendar algun
> tutorial o ejemplo para manejar al system.net.sockets, lo que quiero es
> obtener el codigo de una pagina web y no se como hacerlo usando esta clase,
> una duda sobre esto, usar system.net.sockets es lo mas eficiente?? o existe
> otra forma, porque anteriormente en VB 6 yo usaba el winsock pero al usar
> muchos la aplicacion se hacia muy pesada por eso tuve que crear una clase y
> usar la api del winsock es decir trabajar a un nivel mas bajo de esta forma
> todo lo coloque en una dll y funciona muy bien y no es tan pesado, ahora
> quiero realizar lo mismo con .NET pero no se por donde empezar a manejar el
> system.net.sockets si alguien me puede dar algun ejemplo o sugerir alguna
> pagina con informacion al respecto...
>
> Gracias
>
Respuesta Responder a este mensaje
#3 Pedro M.Ferrando Moya
18/05/2005 - 20:01 | Informe spam
Hola de nuevo.

¿pones la URL comenzando con http:// ?

De todas formas, te paso el ejemplo completo en programa de modo consola:

Deberas compilarlo como se indica, si no usas el VS.Net.
Y un ejemplo de uso seria: ejemplo3 http://www.google.es



'compilar con vbc ejemplo3.vb /r:system.dll
Imports System
Imports System.Net
Imports System.IO

Module Module1

Sub Main(ByVal args As String())

If args.Length > 0 Then
Dim oH As HttpWebRequest = WebRequest.Create(args(0))
Dim oStream As Stream = oH.GetResponse.GetResponseStream
Dim oSReader As New StreamReader(oStream)
Dim sText As String = oSReader.ReadToEnd()
oSReader.Close()
oStream.Close()
Console.WriteLine(sText)
Else
Console.WriteLine("Debe especificar la pagina a mostrar")
End If
Console.ReadLine()

End Sub

End Module



Espero que te funcione, ya me dirás


"Reynaldo" escribió:

Hola Pedro, muchas gracias por contestar, parace que de esta forma todo se
simplifica, pero te cuento que el codigo que me diste no me funciona

hay un error en
Dim oH As HttpWebRequest = WebRequest.Create("aqui pon la url")

al colocar entre comillas la URL me da error, intente almacenar la cadena en
una variable pero al colocar la variable tambien me da error, que puedo
hacer???

"Pedro M.Ferrando Moya" wrote:

> Yo uso esto para ver el codigo fuente de una url
> Pon estos
> Imports System.Net
> Imports System.IO
>
> y el código:
> Dim oH As HttpWebRequest = WebRequest.Create("aqui pon la url")
> Dim oStream As Stream = oH.GetResponse.GetResponseStream
> Dim oSReader As New StreamReader(oStream)
> Dim sText As String = oSReader.ReadToEnd()
> oSReader.Close()
> oStream.Close()
>
> y en sText tendrás el HTML
>
>
>
>
>
>
> "Reynaldo" escribió:
>
> > Hola a todos los del foro, quisiera que alguien me pueda recomendar algun
> > tutorial o ejemplo para manejar al system.net.sockets, lo que quiero es
> > obtener el codigo de una pagina web y no se como hacerlo usando esta clase,
> > una duda sobre esto, usar system.net.sockets es lo mas eficiente?? o existe
> > otra forma, porque anteriormente en VB 6 yo usaba el winsock pero al usar
> > muchos la aplicacion se hacia muy pesada por eso tuve que crear una clase y
> > usar la api del winsock es decir trabajar a un nivel mas bajo de esta forma
> > todo lo coloque en una dll y funciona muy bien y no es tan pesado, ahora
> > quiero realizar lo mismo con .NET pero no se por donde empezar a manejar el
> > system.net.sockets si alguien me puede dar algun ejemplo o sugerir alguna
> > pagina con informacion al respecto...
> >
> > Gracias
> >
Respuesta Responder a este mensaje
#4 Reynaldo
18/05/2005 - 22:41 | Informe spam
Hola Pedro, te agradezco mucho tu ayuda, bueno a mi me sigue dando el error
que te comente, pero lo solucione declarando una variable tipo URI y ahi
contengo la URL y lo demas corre sin problemas, de nuevo muchas gracias

Pero ahora tengo un problema, puese otro programa que hice en vb 6.0 a la
escucha del puerto del programa en VB.NET y te cuento que al hacer correr
esto necesito enviar los datos que manda un browser, en mi caso el Internet
explorer porque? bueno porque hago correr tre consultas simultaneas al Google
y luego este me bloquea diciendome que tengo un spyware o virus, y esto es
porque no mando estos parametros, osea debo simular que la consulta se esta
haciendo desde el Internet Explorer.

ahora hay alguna forma de mandar estos parametros de la forma que me
explicaste???

Gracias de nuevo

"Pedro M.Ferrando Moya" wrote:

Hola de nuevo.

¿pones la URL comenzando con http:// ?

De todas formas, te paso el ejemplo completo en programa de modo consola:

Deberas compilarlo como se indica, si no usas el VS.Net.
Y un ejemplo de uso seria: ejemplo3 http://www.google.es



'compilar con vbc ejemplo3.vb /r:system.dll
Imports System
Imports System.Net
Imports System.IO

Module Module1

Sub Main(ByVal args As String())

If args.Length > 0 Then
Dim oH As HttpWebRequest = WebRequest.Create(args(0))
Dim oStream As Stream = oH.GetResponse.GetResponseStream
Dim oSReader As New StreamReader(oStream)
Dim sText As String = oSReader.ReadToEnd()
oSReader.Close()
oStream.Close()
Console.WriteLine(sText)
Else
Console.WriteLine("Debe especificar la pagina a mostrar")
End If
Console.ReadLine()

End Sub

End Module



Espero que te funcione, ya me dirás


"Reynaldo" escribió:

> Hola Pedro, muchas gracias por contestar, parace que de esta forma todo se
> simplifica, pero te cuento que el codigo que me diste no me funciona
>
> hay un error en
> Dim oH As HttpWebRequest = WebRequest.Create("aqui pon la url")
>
> al colocar entre comillas la URL me da error, intente almacenar la cadena en
> una variable pero al colocar la variable tambien me da error, que puedo
> hacer???
>
> "Pedro M.Ferrando Moya" wrote:
>
> > Yo uso esto para ver el codigo fuente de una url
> > Pon estos
> > Imports System.Net
> > Imports System.IO
> >
> > y el código:
> > Dim oH As HttpWebRequest = WebRequest.Create("aqui pon la url")
> > Dim oStream As Stream = oH.GetResponse.GetResponseStream
> > Dim oSReader As New StreamReader(oStream)
> > Dim sText As String = oSReader.ReadToEnd()
> > oSReader.Close()
> > oStream.Close()
> >
> > y en sText tendrás el HTML
> >
> >
> >
> >
> >
> >
> > "Reynaldo" escribió:
> >
> > > Hola a todos los del foro, quisiera que alguien me pueda recomendar algun
> > > tutorial o ejemplo para manejar al system.net.sockets, lo que quiero es
> > > obtener el codigo de una pagina web y no se como hacerlo usando esta clase,
> > > una duda sobre esto, usar system.net.sockets es lo mas eficiente?? o existe
> > > otra forma, porque anteriormente en VB 6 yo usaba el winsock pero al usar
> > > muchos la aplicacion se hacia muy pesada por eso tuve que crear una clase y
> > > usar la api del winsock es decir trabajar a un nivel mas bajo de esta forma
> > > todo lo coloque en una dll y funciona muy bien y no es tan pesado, ahora
> > > quiero realizar lo mismo con .NET pero no se por donde empezar a manejar el
> > > system.net.sockets si alguien me puede dar algun ejemplo o sugerir alguna
> > > pagina con informacion al respecto...
> > >
> > > Gracias
> > >
Respuesta Responder a este mensaje
#5 Pedro M.Ferrando Moya
18/05/2005 - 23:44 | Informe spam
Hola de nuevo.
Para simular un I.Explorer o el que quieras, debes poner

Dim oH As HttpWebRequest = WebRequest.Create( uri )
oH.useragent="aqui pones el user agent que quieras simular"
Dim oStream As Stream = oH.GetResponse.GetResponseStream
Dim oSReader As New StreamReader(oStream)
Dim sText As String = oSReader.ReadToEnd()
oSReader.Close()
oStream.Close()

en el caso del IE puedes usar:

Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1;+SV1;+.NET+CLR+1.1.4322)

"Reynaldo" escribió:

Hola Pedro, te agradezco mucho tu ayuda, bueno a mi me sigue dando el error
que te comente, pero lo solucione declarando una variable tipo URI y ahi
contengo la URL y lo demas corre sin problemas, de nuevo muchas gracias

Pero ahora tengo un problema, puese otro programa que hice en vb 6.0 a la
escucha del puerto del programa en VB.NET y te cuento que al hacer correr
esto necesito enviar los datos que manda un browser, en mi caso el Internet
explorer porque? bueno porque hago correr tre consultas simultaneas al Google
y luego este me bloquea diciendome que tengo un spyware o virus, y esto es
porque no mando estos parametros, osea debo simular que la consulta se esta
haciendo desde el Internet Explorer.

ahora hay alguna forma de mandar estos parametros de la forma que me
explicaste???

Gracias de nuevo

"Pedro M.Ferrando Moya" wrote:

> Hola de nuevo.
>
> ¿pones la URL comenzando con http:// ?
>
> De todas formas, te paso el ejemplo completo en programa de modo consola:
>
> Deberas compilarlo como se indica, si no usas el VS.Net.
> Y un ejemplo de uso seria: ejemplo3 http://www.google.es
>
>
>
> 'compilar con vbc ejemplo3.vb /r:system.dll
> Imports System
> Imports System.Net
> Imports System.IO
>
> Module Module1
>
> Sub Main(ByVal args As String())
>
> If args.Length > 0 Then
> Dim oH As HttpWebRequest = WebRequest.Create(args(0))
> Dim oStream As Stream = oH.GetResponse.GetResponseStream
> Dim oSReader As New StreamReader(oStream)
> Dim sText As String = oSReader.ReadToEnd()
> oSReader.Close()
> oStream.Close()
> Console.WriteLine(sText)
> Else
> Console.WriteLine("Debe especificar la pagina a mostrar")
> End If
> Console.ReadLine()
>
> End Sub
>
> End Module
>
>
>
> Espero que te funcione, ya me dirás
>
>
> "Reynaldo" escribió:
>
> > Hola Pedro, muchas gracias por contestar, parace que de esta forma todo se
> > simplifica, pero te cuento que el codigo que me diste no me funciona
> >
> > hay un error en
> > Dim oH As HttpWebRequest = WebRequest.Create("aqui pon la url")
> >
> > al colocar entre comillas la URL me da error, intente almacenar la cadena en
> > una variable pero al colocar la variable tambien me da error, que puedo
> > hacer???
> >
> > "Pedro M.Ferrando Moya" wrote:
> >
> > > Yo uso esto para ver el codigo fuente de una url
> > > Pon estos
> > > Imports System.Net
> > > Imports System.IO
> > >
> > > y el código:
> > > Dim oH As HttpWebRequest = WebRequest.Create("aqui pon la url")
> > > Dim oStream As Stream = oH.GetResponse.GetResponseStream
> > > Dim oSReader As New StreamReader(oStream)
> > > Dim sText As String = oSReader.ReadToEnd()
> > > oSReader.Close()
> > > oStream.Close()
> > >
> > > y en sText tendrás el HTML
> > >
> > >
> > >
> > >
> > >
> > >
> > > "Reynaldo" escribió:
> > >
> > > > Hola a todos los del foro, quisiera que alguien me pueda recomendar algun
> > > > tutorial o ejemplo para manejar al system.net.sockets, lo que quiero es
> > > > obtener el codigo de una pagina web y no se como hacerlo usando esta clase,
> > > > una duda sobre esto, usar system.net.sockets es lo mas eficiente?? o existe
> > > > otra forma, porque anteriormente en VB 6 yo usaba el winsock pero al usar
> > > > muchos la aplicacion se hacia muy pesada por eso tuve que crear una clase y
> > > > usar la api del winsock es decir trabajar a un nivel mas bajo de esta forma
> > > > todo lo coloque en una dll y funciona muy bien y no es tan pesado, ahora
> > > > quiero realizar lo mismo con .NET pero no se por donde empezar a manejar el
> > > > system.net.sockets si alguien me puede dar algun ejemplo o sugerir alguna
> > > > pagina con informacion al respecto...
> > > >
> > > > Gracias
> > > >
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida