Averiguar Nombres de Elementos de paginas webs

Topic created · 9 Mensajes · 1905 Visitas
  • Una ultima cosilla, para rematar la faena jeje
    Para hacer click sobre un "boton" de la pagina web? Por ejemplo, que haga click en donde pone UNIVERSOJUEGOS de arriba.

    Muchas gracias 😉

  • Hola, necesito una ayudita. He estado buscando por internet y he encontrado este comando para vb:

    WebBrowser1.Document.formualrioquelocontiene.nombredeltextbox.Value = "Hola"
    

    Lo que me pasa es que no se cómo averiguar el nombre del formulario de la pagina web ni el nombre del textbox de la pagina web. Si me puedierais decir cómo saber esos datos os lo agradecería mucho.

    Muchas gracias

    PD: Me urge un poco bastante

  • pues miras el código fuente y lees lo que ponga en:
    name="loquesea"

    Pero no todos los form tienen "name". Algunos sí, otros tienen "id", otros ninguno, otros las dos cosas.

  • Por ejemplo, la caja de "respuesta rápida" también tiene un name, solo tienes que buscar en el código fuente:

    Name= Message

  • Y para escribir en una caja de texto de esas usando vb.net 2008, como se haria?
    Porque el codigo que os puse no me funciona

  • Debes tener el webbrowser 100% cargado, aunque sean los formularios necesarios.

    Estos te deberían servir seguramente:

    WebBrowser1.Document.GetElementById("ip").SetAttribute("value", ip_sv.Text)
            WebBrowser1.Document.GetElementById("submit").InvokeMember("click")
    

    Weebrowser1.Documents.GetElementById("ip") en IP se pone el "name" del elemento, luego pones .setattribute("value", lo que quieras poner)
    Editas el atributo del valor.

  • si el getElementById es como en javascript, lo que va como parámetro es el campo ID del elemento. No el "name".
    Que además tendría su lógica si miras el nombre de la función.

    Solo lo digo porque me ha saltado de ojo, ya sabéis que yo de vb poquita cosa.

  • Para hacer click sería:

    WebBrowser1.Document.GetElementById("namedelaimagen").InvokeMember("click")
    

    Pero como la imagen no tiene "name", tiene "id" pues... no tengo ni idea xD, tal vez si me dijeras hacerlo en un botón...

  • Para saber el nombre de los elementos en una web uso firebug(firefox) , cuando se instala le das al elemnto click derecho y inpeccionar elemento, ahi te dira el ID
    Si es una caja de texto, para rellenarla cuando este el formulario completamente cargado usa el evento document_completed y luego el innertext.
    Por ejemplo,si quieres rellenar el formulario de [http://www.tuenti.com][0]">[www.tuenti.com][1] , sería así

    Private Sub WebBrowser1_DocumentCompleted(ByVal sender As Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
            If WebBrowser1.Url.ToString = "http://www.tuenti.com/?m=login" Then
                With WebBrowser1.Document
                    .GetElementById("email").InnerText = "tuid"
                    .GetElementById("input_password").InnerText = "tupass"
                    .GetElementById("submit_button").InvokeMember("click")
                End With
            End If        
        End Sub
    

    Si quieres invocar un miembro que no tiene Id.. puedes usar el :
    GetElementFromPoint() -- > para invocar un miembro desde una cordenanda o
    GetElementsByTagName() -- > para invocar un miembro desde tu tag

    y eso es todo xD
    Saludos

    [0]: <a href=
    [1]: http://www.tuenti.com