Vídeo recomendado
https://youtu.be/diWPPPhW-9E

Página com ID e XPATH idênticos

A Web está aí, não há como negar. Ela é onipresente em praticamente toda operação eletrônica realizada nos dias de hoje. Como não podia ser diferente, o Excel, ferramenta máxima para analistas e profissionais das mais diversas áreas do mercado precisa estar alinhado com esta necesssidade. E ele está! Neste forum, o debate é focado em expor dúvidas, sugestões, modelos de código e exemplos de uso do Excel na Integração com tecnologias Web.
adveduardo
Acabou de chegar
Acabou de chegar
Mensagens: 3
Registrado em: Sex Ago 09, 2019 7:35 am

Página com ID e XPATH idênticos

Mensagem por adveduardo »

Bom dia,
Estou com um Problema da seguinte ordem, a página do qual estou interagindo esta possui duas table idênticas mas com conteúdo distinto.

Ocorre que ao extrair ela extrai sempre a primeira. Como faço para selecionar o segundo xpath ou id já que ele é idêntico ao primeiro.

O XPATH da primeira table:

//*[@id="sample-table-2"]

o XPATH da segunda table:

//*[@id="sample-table-2"]

Desde já agradeço.
Anexos
Sem título.jpg
Sem título.jpg (55.03 KiB) Exibido 5919 vezes


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


adveduardo
Acabou de chegar
Acabou de chegar
Mensagens: 3
Registrado em: Sex Ago 09, 2019 7:35 am

Re: Página com ID e XPATH idênticos

Mensagem por adveduardo »

Depois de alguns testes consegui utilizando o (FindElementByClass), mas não consegui localizar uma solução de como usar:

FindElements

para localizar o segundo elemento.


att.


Avatar do usuário
webmaster
Administrador
Mensagens: 3114
Registrado em: Sex Jul 24, 2009 2:44 pm
Contato:

Re: Página com ID e XPATH idênticos

Mensagem por webmaster »

Resolveu? Pode postar o código?


adveduardo
Acabou de chegar
Acabou de chegar
Mensagens: 3
Registrado em: Sex Ago 09, 2019 7:35 am

Re: Página com ID e XPATH idênticos

Mensagem por adveduardo »

Ficou assim não sei se representa a melhor técnica mas resolveu!

Primeira tabela

debug.print driver.FindElementByXPath("//*[@id="sample-table-2"]").Text

Segunda tabela

debug.print driver.FindElementByClass("grid-enderecos").Text


Certa vez eu vi o amigo comentar sobre (ElementsBy) no plural para pegar todas e depois selecionar a ordem. Quando tem esse problema. Só que não entendi como escrever Ex. debug.print driver.FindElementByXPath("//*[@id="sample-table-2"]").Text onde ficaria o numeral para selecionar?

att.


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Avatar do usuário
webmaster
Administrador
Mensagens: 3114
Registrado em: Sex Jul 24, 2009 2:44 pm
Contato:

Re: Página com ID e XPATH idênticos

Mensagem por webmaster »

as funções FindElementBy[Id, Class, Xpath] (singular) retornam um IWebElement.
as funções FindElementBys[Id, Class, Xpath] (plural) retornam um IWebElements, que é basicamente um array de IWebElements.

Você pode acessar ele seja via índice:

Código: Selecionar todos

driver.FindElementsByClass("classe")(1) '<-- acessa o índice 1 do array
Ou via loop

Código: Selecionar todos

Dim driver as NewChromeDriver
Dim elemento as IWebElement, elementos as IWebElements

'navega...

Set elementos = driver.FindElementsByClass("classe") 'aqui retorna mútilplos elementos

'itera sobre
For Each elemento In elementos 
    Debug.Print elemento.Text
Next elemento


vianagabriel
Acabou de chegar
Acabou de chegar
Mensagens: 1
Registrado em: Sáb Abr 09, 2022 4:49 pm

Re: Página com ID e XPATH idênticos

Mensagem por vianagabriel »

Fiz uma conta só p/ agradecer!!

Rodei na net toda, nos gringos, mas encontrei agora a solução!

muito obrigado


Avatar do usuário
webmaster
Administrador
Mensagens: 3114
Registrado em: Sex Jul 24, 2009 2:44 pm
Contato:

Re: Página com ID e XPATH idênticos

Mensagem por webmaster »

vianagabriel escreveu: Qua Nov 02, 2022 4:09 pm Fiz uma conta só p/ agradecer!!

Rodei na net toda, nos gringos, mas encontrei agora a solução!

muito obrigado
<3


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Responder