Ir para o conteúdo
Pazap Tutors

Como Conseguir Clicar Num Elemento HTML Através Da Class

Mensagens Recomendadas

Pazap Tutors

Olá, eu estou a criar um programa para postar em grupos do facebook. Mas para conseguir clicar num botão, preciso que o web browser faça isso pela class, pois o ID é random.

Espero que me ajudem!

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
apocsantos

Bom dia,

For Each Element As HtmlElement In WebBrowser1.Document.GetElementsByTagName("a")
If Element.OuterHtml.Contains("ClasseName") Then
Element.InvokeMember("click")
return
End If
Next Element

Cordiais cumprimentos,

Apocsantos


"A paciência é uma das coisas que se aprendeu na era do 48k" O respeito é como a escrita de código, uma vez perdido, dificilmente se retoma o habito"

assinatura.jpg

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Pazap Tutors

Bem, eu já testei e não resultou. O objetivo era postar em grupos do facebook! Se puder ajudar novamente agradecia que o fizesse!

 

Obrigado Pela Atenção, Pazap Tutors

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
apocsantos

Boa noite,

Troca o classname, pelo nome da classe em questão.

Cordiais cumprimentos,

Apocsantos


"A paciência é uma das coisas que se aprendeu na era do 48k" O respeito é como a escrita de código, uma vez perdido, dificilmente se retoma o habito"

assinatura.jpg

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Pazap Tutors

Eu coloquei o código no evento do botão e alterei a ClassName para a class em questão. Logo em seguida executei o programa para testar e, quando clico no botão, simplesmente não acontece nada nem um erro!

Public Class Form1
    '================================'
    'Isto é só um formulário de teste'
    '================================'

    Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
        'Site Do navegador'
        WebBrowser1.Navigate("https://www.facebook.com/groups/511333882410468/")
    End Sub

    Private Sub bnt_msg_Click(sender As System.Object, e As System.EventArgs) Handles bnt_msg.Click
        'Evento do Botão: bnt_msg'
        For Each Element As HtmlElement In WebBrowser1.Document.GetElementsByTagName("a")
            If Element.OuterHtml.Contains("_1mf7 _4jy0 _4jy3 _4jy1 _51sy selected _42ft") Then
                Element.InvokeMember("Click")
                Return
            End If
        Next Element
    End Sub

End Class

 

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
apocsantos

Bom dia,

Experimenta usar o debuger do vs e os breakpoints para ver o que está a falhar.

Cordiais cumprimentos,

Apocsantos


"A paciência é uma das coisas que se aprendeu na era do 48k" O respeito é como a escrita de código, uma vez perdido, dificilmente se retoma o habito"

assinatura.jpg

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Pazap Tutors

Bem, eu utilizei os Breakpoints e cheguei a uma conclusão:

O programa não está a encontrar a class, logo a linha de código que faz o programa clicar no elemento não é executada.

'Evento Do Botão'

        For Each Element As HtmlElement In WebBrowser1.Document.GetElementsByTagName("a")
            If Element.OuterHtml.Contains("_332r") Then

 				 Element.InvokeMember("Click") '<--Esta Linha de Código não é executada'

                Return
            End If
        Next Element

Espero que me continue a ajudar! Obrigado!

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
apocsantos

Boa noite,

'Evento Do Botão'

For Each Element As HtmlElement In WebBrowser1.Document.GetElementsByTagName("<div") ''tag html a ser pesquisada, para depois pesquisar os elementos
            If Element.OuterHtml.Contains("_332r") Then

 				 Element.InvokeMember("Click") '<--Esta Linha de Código não é executada'

                Return
            End If
        Next Element

Não tenho a certeza se vai dar, pois não estou com tempo para testar, mas testa e experimenta trocar a tag html a ser pesquisada.

Cordiais cumprimentos,

Apocsantos


"A paciência é uma das coisas que se aprendeu na era do 48k" O respeito é como a escrita de código, uma vez perdido, dificilmente se retoma o habito"

assinatura.jpg

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Pazap Tutors

Bem, isso também não funcionou, porém já não preciso dessa função! Obrigado a todos por me terem ajudado. 

Ainda não irei encerrar o tópico pois a dúvida ainda não foi corretamente respondida.

 

Boa sorte a todos e bons código!

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.