none
Obtener datos de una tabla alojada en otra web RRS feed

  • Pregunta

  • Buenos días a todos, en esta oportunidad recurro a ustedes para consultarles como obtener los datos que están en una tabla pertenecientes a otra web.

    Lo que quiero por ejemplo es obtener los precios de las apuestas de esta web.

    https://ar.spingol.com/sportbooks/index.asp

    Tendría que obtener el html de esa web, filtrarlo, seleccionar lo que deseo?. La verdad estoy perdidísimo con este tema.

    Espero su ayuda, gracias.

    jueves, 15 de octubre de 2015 7:44

Respuestas

  • hola

    >>Tendría que obtener el html de esa web, filtrarlo, seleccionar lo que deseo?.

    veo que usas el WebClient para obtener el html de la pagina

    ahora para parsearlo podrias usar el

    Html Agility Pack

    si conoces como es el html podrias seleccionar algun tag y extraer los datos

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 15 de octubre de 2015 11:31

Todas las respuestas

  • Hola, buen día.

    Una vez que te hayas descargado la página y la tengas en un string, podés utilizar esta librería para hacer consultas con selectores CSS.

    Es muy sencillo, cuando consigas alguna aproximación, si te surge alguna duda te ayudamos.

    Salu2

    jueves, 15 de octubre de 2015 8:02
  • Imports System.Net
    Imports System.IO
    Imports CsQuery
    Public Class WebForm1
        Inherits System.Web.UI.Page
        Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
            Dim datos As String = GetHtmlPage("https://ar.spingol.com/sportbooks/index.asp")
           Dim dom = CQ.CreateDocument(datos)
        
        End Sub
        Shared Function GetHtmlPage(ByVal strURL As String) As String
    
            Dim strResult As String
            Dim objResponse As WebResponse
            Dim objRequest As WebRequest = HttpWebRequest.Create(strURL)
            objResponse = objRequest.GetResponse()
            Using sr As New StreamReader(objResponse.GetResponseStream())
                strResult = sr.ReadToEnd()
                sr.Close()
            End Using
            Return strResult
        End Function
    End Class

    Eso es lo que tengo por ahora, como accedo a los datos en especifico?

    No se si es correcto lo del load.

     gracias


    jueves, 15 de octubre de 2015 8:27
  • Hola, en la página que te pasé de la librería te explica como leer un HTML utilizando CSS. ¿Sabés CSS? ¿Te lo leíste?
    jueves, 15 de octubre de 2015 8:52
  • Sip, lei, pero no termino de comprender, no logro acceder a los valores que deseo.
    jueves, 15 de octubre de 2015 8:57
  • Hola, deberías intentar obtener los valores desde la página a través de selectores.

    Para hacer esto, por ejemplo, abrite la página con Chrome, abrí la consola de desarrollo (F12), y en la pestaña "Console" podrías poner $('selector') y ver si obtener los campos HTML que buscás.

    Doy por hecho que entendés lo que son los selectores CSS y JQuery. Sino en Google hay mucha información.

    Creo que es la manera más rápida y versátil de parsear datos de una página web.

    Salu2

    jueves, 15 de octubre de 2015 9:19
  • hola

    >>Tendría que obtener el html de esa web, filtrarlo, seleccionar lo que deseo?.

    veo que usas el WebClient para obtener el html de la pagina

    ahora para parsearlo podrias usar el

    Html Agility Pack

    si conoces como es el html podrias seleccionar algun tag y extraer los datos

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 15 de octubre de 2015 11:31