Vídeo recomendado
https://youtu.be/diWPPPhW-9E
https://youtu.be/diWPPPhW-9E
[RESOLVIDO] Tentando acessar informação dentro de iframe - Selenium
[RESOLVIDO] Tentando acessar informação dentro de iframe - Selenium
Caros, boa tarde.
Estou tentando fazer um código que faz uma consulta em determinado site. Ao realizar a consulta, uma janela tipo "popup" abre com os resultados da consulta, as quais quero extrair essas informações e jogar ao excel.
O problema é: noto que o problema é que o código não identifica de jeito nenhum o objetivo tipo iframe, para que eu possa pegar as informações dentro deste bloco. Veja um resumo do código da página:
Estou tentando acessar objetos dentro do "iframe" destacado em roxo no código. Porém já tentei de "N" formas no VBA/ Selenium, e em todos eles, fala que o objeto não existe.
Consegui chegar até o endereço do "div class = modal-body" anterior ao iframe. Até ai, tudo bem. Quando tento acessar o iframe, não vem nada.
Alguém consegue me dizer qual a 'mágica' para acessar objetos tipo iframe (popup de tela) para que eu consiga ler as informações desse popup?
Preciso muito dessa ajudinha...
Qualquer dica, ficarei muito grata.
Abs,
Ariane
Estou tentando fazer um código que faz uma consulta em determinado site. Ao realizar a consulta, uma janela tipo "popup" abre com os resultados da consulta, as quais quero extrair essas informações e jogar ao excel.
O problema é: noto que o problema é que o código não identifica de jeito nenhum o objetivo tipo iframe, para que eu possa pegar as informações dentro deste bloco. Veja um resumo do código da página:
Estou tentando acessar objetos dentro do "iframe" destacado em roxo no código. Porém já tentei de "N" formas no VBA/ Selenium, e em todos eles, fala que o objeto não existe.
Consegui chegar até o endereço do "div class = modal-body" anterior ao iframe. Até ai, tudo bem. Quando tento acessar o iframe, não vem nada.
Alguém consegue me dizer qual a 'mágica' para acessar objetos tipo iframe (popup de tela) para que eu consiga ler as informações desse popup?
Preciso muito dessa ajudinha...
Qualquer dica, ficarei muito grata.
Abs,
Ariane
- Anexos
-
- cód html.png (37.57 KiB) Exibido 12135 vezes
Editado pela última vez por nanica em Qua Mai 10, 2017 7:20 pm, em um total de 1 vez.
Re: Tentando acessar informação dentro de iframe - Selenium
Qual selenium está usando? VBA ou SeleniumBasic?
Re: Tentando acessar informação dentro de iframe - Selenium
Boa noite...
Estou usando o selenium basic... uso a ferramenta através do complemento selenium IDE via Firefox e Chrome para testes.
Estou usando o selenium basic... uso a ferramenta através do complemento selenium IDE via Firefox e Chrome para testes.
Re: Tentando acessar informação dentro de iframe - Selenium
Use o método switchToFrame("nome-do-frame") para acessar o frame. Após isso, a variável driver passará a fazer referência ao documento dentro do frame, não mais no documento principal.
Portanto, o IsElementPresent e todos os outros procurarão objetos dentro do frame depois da execução desse método. Use o SwitchToDefaultContent para voltar ao documento principal.
Att
Portanto, o IsElementPresent e todos os outros procurarão objetos dentro do frame depois da execução desse método. Use o SwitchToDefaultContent para voltar ao documento principal.
Att
Re: Tentando acessar informação dentro de iframe - Selenium
Vou testar esses comandos Tomás... em breve digo se deu certo ou não.
Muito obrigada!
Abs
Muito obrigada!
Abs
Re: Tentando acessar informação dentro de iframe - Selenium
Tomás, deu super certo!
Excelente!
Obrigada pela ajuda e dica!
abs.
Excelente!
Obrigada pela ajuda e dica!
abs.
Re: Tentando acessar informação dentro de iframe - Selenium
Fala ae blz?webmaster escreveu: ↑Ter Mai 09, 2017 11:29 pm Use o método switchToFrame("nome-do-frame") para acessar o frame. Após isso, a variável driver passará a fazer referência ao documento dentro do frame, não mais no documento principal.
Portanto, o IsElementPresent e todos os outros procurarão objetos dentro do frame depois da execução desse método. Use o SwitchToDefaultContent para voltar ao documento principal.
Att
Seguindo a sua dica, como eu faço para "pegar" o nome do frame quando ele é dinâmico? Percebi que toda vez que acesso a página o nome do frame e id mudam veja:
Código: Selecionar todos
<iframe id="fancybox-frame1513166542218"
name="fancybox-frame1513166542218"
class="fancybox-iframe" frameborder="0" vspace="0" hspace="0" webkitallowfullscreen=""
mozallowfullscreen="" allowfullscreen=""
scrolling="no" src="/revenda/veiculos/comprar/fiat-palio-1-0-mpi-fire-economy-8v-flex-4p-manual-2012-2013-70669"></iframe>
Agradeço antecipadamente qualquer informação.
Obrigado,
Marcelo
-
- Acabou de chegar
- Mensagens: 2
- Registrado em: Ter Jan 16, 2018 6:51 am
Re: Tentando acessar informação dentro de iframe - Selenium
Cara estou com o mesmo problema, voce encontrou alguma solução ?? ou alguem saberia alguma solução ?le_lo28 escreveu: ↑Qua Dez 13, 2017 10:24 amFala ae blz?webmaster escreveu: ↑Ter Mai 09, 2017 11:29 pm Use o método switchToFrame("nome-do-frame") para acessar o frame. Após isso, a variável driver passará a fazer referência ao documento dentro do frame, não mais no documento principal.
Portanto, o IsElementPresent e todos os outros procurarão objetos dentro do frame depois da execução desse método. Use o SwitchToDefaultContent para voltar ao documento principal.
Att
Seguindo a sua dica, como eu faço para "pegar" o nome do frame quando ele é dinâmico? Percebi que toda vez que acesso a página o nome do frame e id mudam veja:
A única informação fixa é o class.Código: Selecionar todos
<iframe id="fancybox-frame1513166542218" name="fancybox-frame1513166542218" class="fancybox-iframe" frameborder="0" vspace="0" hspace="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen="" scrolling="no" src="/revenda/veiculos/comprar/fiat-palio-1-0-mpi-fire-economy-8v-flex-4p-manual-2012-2013-70669"></iframe>
Agradeço antecipadamente qualquer informação.
Obrigado,
Marcelo
Re: [RESOLVIDO] Tentando acessar informação dentro de iframe - Selenium
Lucas,
Eu resolvi da seguinte forma:
Eu resolvi da seguinte forma:
Código: Selecionar todos
Call Driver.SwitchToFrame(0)
[\code]
Substitua o Driver pelo nome que você setou o seu navegador.
Falow,
Marcelo
-
- Acabou de chegar
- Mensagens: 1
- Registrado em: Ter Fev 20, 2018 3:50 pm
Re: [RESOLVIDO] Tentando acessar informação dentro de iframe - Selenium
Estou automatizando uma pesquisa na internet com o Selenium Basic, mas cheguei em um ponto o qual não consigo resolver.
A pesquisa abre um iframe dentro de um fancy-box (ou ao contrario, não sei).
Não consigo apontar para este iframe de jeito nenhum.
Já visitei todo o fórum, achei um meio mas não consigo achar o objeto, nem com Xpath, CSS, Tag, nada...
Já estou há dois dias parado neste ponto.
Não entendi como resolveu.
Alguém pode me ajudar...
SOCORRO!
Vlw
Marcelo
A pesquisa abre um iframe dentro de um fancy-box (ou ao contrario, não sei).
Não consigo apontar para este iframe de jeito nenhum.
Já visitei todo o fórum, achei um meio mas não consigo achar o objeto, nem com Xpath, CSS, Tag, nada...
Já estou há dois dias parado neste ponto.
Não entendi como resolveu.
Alguém pode me ajudar...
SOCORRO!
Vlw
Marcelo