Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: DragonsWP en 28 Diciembre 2011, 21:41 pm



Título: [AYUDA]EXTRAER DATOS DE UNA WEB Y PONERLO EN TEXTBOX VB.NET
Publicado por: DragonsWP en 28 Diciembre 2011, 21:41 pm
Buenas tardes, abro este tema debido a que eh buscado por google, y por varios foros, pero no logro encontrar un inicio para poder extraer datos que hay en cierta web http://www.universidadperu.com/empresas/fundicion-mecanizada.php (http://www.universidadperu.com/empresas/fundicion-mecanizada.php) y colocarlo en un textbox.

espero que me puedan ayudar desde ya agradezco su atenciòn a la presente.



Título: WebClient or HttpWebResponse and Regex
Publicado por: Unbr0ken en 29 Diciembre 2011, 08:16 am
Pues lo que te puedo aconsejar, es que descargues el código fuente de la página en cuestión y leas los datos entre las etiquetas pertinentes.

Revisa éste enlace (http://www.csharp-station.com/HowTo/HttpWebFetch.aspx), seguramente entenderás al instante de qué hablo.

Por supuesto que tienes alternativas, también puedes usar la clase WebClient del espacio de nombres System.Net; obtendrás los mismos resultados.

Ahora te digo que para extraer el texto entre las etiquetas html que quieras, deberías usar expresiones regulares, es mucho más rápido y fiable.

Salud.


Título: Re: WebClient or HttpWebResponse and Regex
Publicado por: DragonsWP en 29 Diciembre 2011, 14:08 pm
Pues lo que te puedo aconsejar, es que descargues el código fuente de la página en cuestión y leas los datos entre las etiquetas pertinentes.

Revisa éste enlace (http://www.csharp-station.com/HowTo/HttpWebFetch.aspx), seguramente entenderás al instante de qué hablo.

Por supuesto que tienes alternativas, también puedes usar la clase WebClient del espacio de nombres System.Net; obtendrás los mismos resultados.

Ahora te digo que para extraer el texto entre las etiquetas html que quieras, deberías usar expresiones regulares, es mucho más rápido y fiable.

Salud.
como decis descargar el codigo fuente de la web es la mejor manera de hay tendria que sacar el contenido que esta entre las etiquetas, pero mi pregunta eh buscado tambien esa forma pero no encuentro un codigo de ejemplo para que saque los datos. y aclaro que lo que quiero realizar es en Visual Basic . Net aplicaciòn de escritorio.


Título: Re: [AYUDA]EXTRAER DATOS DE UNA WEB Y PONERLO EN TEXTBOX VB.NET
Publicado por: seba123neo en 29 Diciembre 2011, 15:53 pm
lo que te dijo Unbr0ken es que bajes el codigo fuente de la web para despues procesarlo y asi sacar las partes que mas te interesan, lo que se llama comunmente parsear. podes hacerlo de varias formas busca como parsear un html en internet y tenes varios ejemplos en .NET ya sea para C# O vb.net es lo mismo.

tambien existe una libreria muy buena que se llama Html Agility Pack (http://htmlagilitypack.codeplex.com/), que lo que hace es parsear un HTML determinado, esta muy buena ya que esta todo programado y lo unico que debes hacer es decirle que parte queres sacar.

por ejemplo en la pagina que pusiste ahi, la informacion de la empresa, si ves el codigo HTML, esta dentro de un formulario llamado "form name="InfoEmpresa", entonces lo que deberias hacer es parsear el contendo de ese formulario web.

saludos.


Título: Re: WebClient or HttpWebResponse and Regex
Publicado por: Unbr0ken en 29 Diciembre 2011, 19:25 pm
como decis descargar el codigo fuente de la web es la mejor manera de hay tendria que sacar el contenido que esta entre las etiquetas, pero mi pregunta eh buscado tambien esa forma pero no encuentro un codigo de ejemplo para que saque los datos. y aclaro que lo que quiero realizar es en Visual Basic . Net aplicaciòn de escritorio.

Por favor tío, o no sabes buscar, o solamente quieres el trabajo hecho.

Google me arroja por C#:

Código
  1. string getPageSource(string URL)
  2. {
  3.    System.Net.WebClient webClient = new System.Net.WebClient();
  4.    string strSource = webClient.DownloadString(URL);
  5.    webClient.Dispose();
  6.    return strSource;
  7. }

Y como no hay tanta diferencia, en VB.NET debería ser algo así:

Código
  1. Private Function getPageSource(ByVal URL As String) As String
  2. Dim webClient As New System.Net.WebClient()
  3. Dim strSource As String = webClient.DownloadString(URL)
  4. webClient.Dispose()
  5. Return strSource
  6. End Function

En fin... google no muerde.