Raygsson escreveu: ↑Qua Set 23, 2020 3:00 pm
Gustavo
Tente fazer assim:
Código: Selecionar todos
.FindElementsByXPath("//a[contains(@href,'IN_PRECED=')]").item(1).click
Att,
Raygsson
Muito bom @Raygsson, este tópico já ajudou muito e me fez avançar no meu projeto!
Para não criar um outro tópico pois a dúvida é semelhante ao do colega, que a dica resolveu, mas esbarrei em outra dificuldade e gostaria de saber se conseguem me ajudar por aqui, ou se preciso criar um novo tópico!
Basicamente, estou montando um sistema para fazer o backup de chamadas gravadas no JIVE!
Consegui logar no sistema, navegar até o usuário no dia que pretendo, e lá tenho uma tabela com as ligações e um botão para ouvir/baixar a gravação, que clica com a dica acima e ele abre um elemento, que tem o botão de play e download, repeti a ideia do botão de download e funcionou também, agora eu preciso partir para os demais downloads da tabela e ai enfrentei dificuldade.
Pois bem, como disse ele abre um elemento contendo o player e download:
PASSOS 01 E 02:
E para fechar este elemento do Player/Download eu clico om outra parte do site,
PASSO 03 assim repeti o processo usando outro XPath mas não deu certo, dá erro 0
Segue um trecho do código que estou fazendo:
Código: Selecionar todos
navegar.Get ("https://my.jive.com/cr/vedichindusbr/user-activity/809d452c-54d5-4ec8-894d-0a8a110278fe?userId=809d452c-54d5-4ec8-894d-0a8a110278fe&&start=2021-02-01T00:00:00&end=2021-02-01T23:59:59&tz=America%2FSao_Paulo")
'01 - Abre o Player para fazer o download do arquivo 1
navegar.FindElementsByXPath("//mat-cell[9]/mat-icon").Item(1).Click
'02 - Clica em download do arquivo 1
navegar.FindElementsByXPath("//cr-recordings-download/div/mat-icon").Item(1).Click
'03 - Clica fora para fechar o elemento do player/download
navegar.FindElementsByXPath("//cr-root/div").Item(1).Click
'04 - Abre o Player para fazer o download do arquivo 2
navegar.FindElementsByXPath("//mat-row[2]/mat-cell[9]/mat-icon").Item(1).Click
'05 - Clica em download do arquivo 2
navegar.FindElementsByXPath("//cr-recordings-download/div/mat-icon").Item(1).Click
Até já pensei numa alternativa de contornar isso e que resolveu, tendo que reabrir a página, mas tornaria mais lento o processo, gostaria de tentar e aprender a como resolver este problema ou entender onde estou errado!
Aproveitando se for possível, mas duas dúvidas...
A primeira seria a manipulação do download do arquivo, é possível manipular?
Quando digo manipular, seria, consigo definir parâmetro de onde vai salvar este download?
É possível definir o nome do arquivo que está baixando?
Se tiver como e puderem me dar uma luz para que possa estudar!
E a outra dúvida é com relação a estes downloads ai, precisarei montar um loop pegando todos os downloads a serem feitos, pelo que vi o XPath seguirá este padrão para cada linha que tiver download disponível...
Código: Selecionar todos
navegar.FindElementsByXPath("//mat-row[2]/mat-cell[9]/mat-icon").Item(1).Click
navegar.FindElementsByXPath("//mat-row[3]/mat-cell[9]/mat-icon").Item(1).Click
navegar.FindElementsByXPath("//mat-row[5]/mat-cell[9]/mat-icon").Item(1).Click
navegar.FindElementsByXPath("//mat-row[9]/mat-cell[9]/mat-icon").Item(1).Click
Existe alguma forma de eu ler o fonte e conseguir pegar quais as
//mat-row[X] devo clicar?
Ou alguma condição para validar se existe a
//mat-row[4] por exemplo, não existindo não clica?
Ufa
Acho que é isso, desde já agradeço pela atenção!