Página 1 de 1
Página com ID e XPATH idênticos
Enviado: Sáb Abr 25, 2020 10:30 am
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.
Re: Página com ID e XPATH idênticos
Enviado: Sáb Abr 25, 2020 12:10 pm
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.
Re: Página com ID e XPATH idênticos
Enviado: Sáb Abr 25, 2020 7:51 pm
por webmaster
Resolveu? Pode postar o código?
Re: Página com ID e XPATH idênticos
Enviado: Dom Abr 26, 2020 10:40 am
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.
Re: Página com ID e XPATH idênticos
Enviado: Dom Abr 26, 2020 1:03 pm
por webmaster
as funções FindElementBy[Id, Class, Xpath] (singular) retornam um IWebElement.
as funções FindElementBy
s[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
Re: Página com ID e XPATH idênticos
Enviado: Qua Nov 02, 2022 4:09 pm
por vianagabriel
Fiz uma conta só p/ agradecer!!
Rodei na net toda, nos gringos, mas encontrei agora a solução!
muito obrigado
Re: Página com ID e XPATH idênticos
Enviado: Qua Nov 02, 2022 11:40 pm
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