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

Exportar Arquivo - Selenium

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.
Wagner.cwb
Manda bem
Manda bem
Mensagens: 168
Registrado em: Sáb Set 24, 2016 4:48 pm

Exportar Arquivo - Selenium

Mensagem por Wagner.cwb »

Olá Amigos!

estou criando um script para baixar um relatório de um site através do selenium.
Lendo as propriedades do selenium, consegui avançar até a penúltima parte do meu projeto, estou esbarrando na hora de gerar o arquivo.
Como estou aprendendo, vou descrever o passo a passo que fiz... se houver alguma sugestão de melhoria e aprimoramento, fiquem a vontade para comentarem.

Em anexo tem a imagem do site.

Código: Selecionar todos

Sub BaseOcupadas_novo()

Set driver = New ChromeDriver

MyLogin = "login"
MyPass = "senha"

'abrir pagina
driver.get "http://atendimento.oi.com.br/Atendimento/oi-pra-negocios/portal-corporativo/relatorios/relatorio-redes-inteligentes"


    'inserir login e senha
    driver.FindElementById("login").SendKeys MyLogin
    driver.FindElementById("senha").SendKeys MyPass
    'clicar no botão ok
    driver.FindElementByClass("bt").Click
    
    'navegar para a página do relatório
    'AQUI TAMBÉM ABRE UMA JANELA EXTRA - DESCARTAR
driver.get "http://signs.telemar.com.br/signs/relatorios/rel_desempenhoRI_SGS.jsp"
'clicar em gerar relatorio
driver.FindElementByName("botaoGerarRelatorio").Click

'travei aqui
driver.FindElementBy???("????").Click

'O CÓDIGO DO BOTÃO QUE EU PRECISO CLICAR
<input type="button" value="Gerar CSV" style="font-family: verdana; font-size: 10px; width: 70px" onclick="exportarRelatorioCSV()">

driver.Quit

End Sub

Obrigado!
Anexos
gerar.PNG
gerar.PNG (53.14 KiB) Exibido 6342 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.


Wagner.cwb
Manda bem
Manda bem
Mensagens: 168
Registrado em: Sáb Set 24, 2016 4:48 pm

Re: Exportar Arquivo - Selenium

Mensagem por Wagner.cwb »

Ótimo tutorial, ajudou-me bastante, mas em outro projeto, aquele do climatempo kkkk

Desse site, continuo apanhando mais que a mãe do sapo ahahaha

Eu sigo o mesmo exemplo do vídeo, e identifico pelo selenium ida no comando verifyTable o alvo - "css=td > table"

Pode ajudar a empurrar essa kombi? Como posso fazer o carregamento da tabela?

Quase que a kombi embalou kkk

enxerguei um padrão...
verifiquei pelo assertText e o alvo foi //tr[7]/td[8]/font
Sendo que tr 7 é a linha e o td é a coluna, ou seja, no meu entendimento eu preciso fazer rodar o tr da primeira até a última linha e fazer o td ficar fixo em 8... agora preciso de ajuda para por isso em código.


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

Re: Exportar Arquivo - Selenium

Mensagem por webmaster »

Wagner,

Chegou a olhar esta opção para extrair dados de tabelas?

https://www.tomasvasquez.com.br/blog/mi ... ium-basic/

O AsTable tem uma propriedade chamada Data que é um array com todos os dados da tabela. Pode ser mais fácil para trabalhar sua informação.


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.


Wagner.cwb
Manda bem
Manda bem
Mensagens: 168
Registrado em: Sáb Set 24, 2016 4:48 pm

Re: Exportar Arquivo - Selenium

Mensagem por Wagner.cwb »

Obrigado Tomas, segui o seu conselho e consegui realizar o "click" com

driver.FindElementByXPath("//input[@value='Gerar CSV']").Click

Agora um novo desafio kkkkkk

Ele baixa o arquivo, mas para o destino definido pelo chrome - Pasta downloads do windows.

Isso para mim é um problema, eu consigo driblar isso no vba, mas quero desafiar-me, como posso definir o local para salvar o arquivo?

Eu pensei em usar a função "URLDownloadToFile", mas para isso preciso identificar a URL resultante do "driver.FindElementByXPath", não consegui...

Código: Selecionar todos

'http://www.macoratti.net/d300801.htm
'Veja como fazer o download de  arquivos sem usar qualquer controle adicional . Você só precisa saber a URL do arquivo que quer baixar e pronto.
Public Function DownloadFile(URL As String, LocalFilename As String) As Boolean
Dim lngRetVal As Long
lngRetVal = URLDownloadToFile(0, URL, LocalFilename, 0, 0)
If lngRetVal = 0 Then
   DownloadFile = True
   MsgBox "O downloada foi realizado com sucessso !"
Else
   MsgBox "Ocorreu um erro durante a conexão. "
End If
End Function
Public Sub Command1_Click()
'argumentos: a url do arquivo que quer baixar e o local e nome
Ret = DownloadFile("http://www.tomasvasquez.com.br/downloads/modelocadastro.zip", "c:\temp\arquivo.zip")

End Sub
Pode me ajudar novamente?


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

Re: Exportar Arquivo - Selenium

Mensagem por webmaster »

Vou ver se escrevo algo sobre até o fim da semana.


Wagner.cwb
Manda bem
Manda bem
Mensagens: 168
Registrado em: Sáb Set 24, 2016 4:48 pm

Re: Exportar Arquivo - Selenium

Mensagem por Wagner.cwb »

webmaster escreveu: Sex Nov 30, 2018 11:21 am Promessa é dívida!

https://www.tomasvasquez.com.br/blog/de ... o-arquivo/

:D :D Obrigado Tomás!!

Estou estudando o código para aplicar aqui, o meu problema é não reconhecer qual "URL" que deflaga o download.
Eu consigo dar o click e realizar a baixa, mas sem reconhecer a url... falha de principiante rs


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