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

XPath 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.
edsonsoulreaver
Colaborador
Colaborador
Mensagens: 17
Registrado em: Qua Dez 21, 2011 8:42 pm

XPath Selenium

Mensagem por edsonsoulreaver »

bom dia,

estou tentando baixar a imagem com o XPath pelo selenium mas não consigo chegar nela, tem um zoom na imagem esse click não pego.
parte do código:
driver.FindElementByXPath("//*[@id=""responsive-home""]/div[13]/div[1]").click

Alguém sabe aonde eu estou errando?




https://www.livrariacultura.com.br/p/li ... ns-2526014

<div class="zoomLens" style="background-position: 0px 0px; height: 240.8px; float: right; overflow: hidden; z-index: 999; transform: translateZ(0px); opacity: 0.4; width: 166px; background-color: white; cursor: crosshair; border: 1px solid rgb(0, 0, 0); background-repeat: no-repeat; position: absolute; left: 0px; top: 60px; display: none;">&nbsp;</div>
XPath
//*[@id="responsive-home"]/div[13]/div[1]

<img class="fancybox-image" src="https://statics.livrariacultura.net.br/ ... 526014.jpg" alt="">
XPath
//*[@id="responsive-home"]/div[18]/div/div/div/div/img


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
Mikel Silveira Fraga
Jedi
Jedi
Mensagens: 1173
Registrado em: Sex Mai 27, 2011 3:27 pm
Localização: Governador Valadares - MG
Contato:

Re: XPath Selenium

Mensagem por Mikel Silveira Fraga »

Boa tarde Edson, tudo bem?

Cara, o código abaixo funcionou legal aqui comigo.

Código: Selecionar todos

Option Explicit

Dim driver As Selenium.WebDriver
Dim img As Selenium.Image

Const sUrl$ = "https://www.livrariacultura.com.br/p/livros/literatura-internacional/suspenses/angels-demons-2526014"

Sub teste()

  Set driver = New ChromeDriver
  driver.Get sUrl$
  
  driver.FindElementByXPath("//div[@class='zoomContainer']").Click
  Set img = driver.FindElementByXPath("//img[@class='fancybox-image']").TakeScreenshot()
  
  img.SaveAs "c:\img.jpg"
  
End Sub
Teste ai e nos retorne


edsonsoulreaver
Colaborador
Colaborador
Mensagens: 17
Registrado em: Qua Dez 21, 2011 8:42 pm

Re: XPath Selenium

Mensagem por edsonsoulreaver »

boa noite,
obrigado, vou testar e retorno.
abs,


edsonsoulreaver
Colaborador
Colaborador
Mensagens: 17
Registrado em: Qua Dez 21, 2011 8:42 pm

Re: XPath Selenium

Mensagem por edsonsoulreaver »

funciou.. porém .TakeScreenshot() ele apenas pega o print da imagem? se for pra eu salvar a imagem pela url src esse procedimento funciona?


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.


edsonsoulreaver
Colaborador
Colaborador
Mensagens: 17
Registrado em: Qua Dez 21, 2011 8:42 pm

Re: XPath Selenium

Mensagem por edsonsoulreaver »

boa tarde,

resolvi um pedaço, mas faltam outras questões:
1-antes de pegar o SRC é necessário abrir uma nova janela aonde contem a imagem, depois eu não consigo fechá-la.

2- aqui pego SRC da imagem que eu quero salvar, porém o procedimento URLDowloadToFile não funciona alguma sugestão?



Set imgs = driver.FindElementsByTag("img")

For Each img1 In imgs

If img1.Attribute("Class") Like "*image-stretch-vertical*" Then
img1.Attribute ("src")
'MsgBox img1.Attribute("src")
url = img1.Attribute("src")
driver.get url
driver.Wait 1000
strSavePath = Trim("C:\Capas Baixadas\ " & wsh.Cells(x, 1) & ".jpg")
returnValue = URLDownloadToFile(0, url, strSavePath, 0, 0)

Exit For
End If


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