Selenium Basic VBA - Obter dados de uma tabela com varias páginas com XPath e inserir os dados na planilha
Enviado: Seg Out 23, 2017 10:19 pm
Bom noite, galera
primeiramente gostaria de parabenizá-los e agradecer por partilhar essas ideias incríveis do Selenium vba e todas as outras. sem mais delongas, Tentei usar a duvida do nosso amigo leandrosantto com o seguinte tópico que encontra-se resolvido. Titulo:[RESOLVIDO] Pequisa de preço Selenium Basic VBA.
Fiz todos os passos do vídeo que o Tomas Vasquez postou para sanar a duvida do nosso amigo sitado a cima e ocorreu tudo certo, porem o site que estou tentando obter os dados a tabela tem varias paginas e só obtêm os dados da primeira pagina e só mostrar os dados na Msgbox. só que eu gostaria de inserir para uma célula da planilha no lugar de mostrar na Msgbox, como eu poderia fazer isso?
segue abaixo o código que tentei:
Obs: Os dados que preciso está na tabela chamada cruzamento do site sitado abaixo como exemplo. Espero que todos consiga entender minha explicação para tentar sanar minhas duvidas
Dim driver As webdriver
Sub ExtrairTabelaDaPagina()
Set driver = New ChromeDriver
driver.Get "http://www.loteriacomj.com.br/loto/mega ... a-sena.php"
Dim tabela As WebElement
Set tabela = driver.FindElementByXPath("//*[@id=""id-tabela-cruzamento""]")
As formas que obtive exito. São as duas primeiras.
1.:
MsgBox tabela.Text 'Funcionou perfeitamente (Só que obtive os dados de apenas uma pagina)
------------------------------------------------------------------------------------------
2.:
If tabela Is Nothing Then
MsgBox "Elemento não encontrado"
Else
MsgBox "Elemento encontrado!" 'Funcionou perfeitamente
------------------------------------------------------------------------------------------
As formas que tentei inserir os dados na planilha, mas não obtive exito.
destino.Value = Worksheets("Cruzamento").Cell("A1") 'Tentativa sem exito
Destination = Sheets("Cruzamento").Range("A1") 'Tentativa sem exito (Não aconteceu nada)
Destination = Worksheets("Cruzamento").Range("A1") 'Tentativa sem exito (Não aconteceu nada)
Destination = sht_Cruzamento.Range("A1") 'Tentativa sem exito (Não aconteceu nada)
End If
driver.Quit
MsgBox "Dados transferido com sucesso!"
End Sub
primeiramente gostaria de parabenizá-los e agradecer por partilhar essas ideias incríveis do Selenium vba e todas as outras. sem mais delongas, Tentei usar a duvida do nosso amigo leandrosantto com o seguinte tópico que encontra-se resolvido. Titulo:[RESOLVIDO] Pequisa de preço Selenium Basic VBA.
Fiz todos os passos do vídeo que o Tomas Vasquez postou para sanar a duvida do nosso amigo sitado a cima e ocorreu tudo certo, porem o site que estou tentando obter os dados a tabela tem varias paginas e só obtêm os dados da primeira pagina e só mostrar os dados na Msgbox. só que eu gostaria de inserir para uma célula da planilha no lugar de mostrar na Msgbox, como eu poderia fazer isso?
segue abaixo o código que tentei:
Obs: Os dados que preciso está na tabela chamada cruzamento do site sitado abaixo como exemplo. Espero que todos consiga entender minha explicação para tentar sanar minhas duvidas
Dim driver As webdriver
Sub ExtrairTabelaDaPagina()
Set driver = New ChromeDriver
driver.Get "http://www.loteriacomj.com.br/loto/mega ... a-sena.php"
Dim tabela As WebElement
Set tabela = driver.FindElementByXPath("//*[@id=""id-tabela-cruzamento""]")
As formas que obtive exito. São as duas primeiras.
1.:
MsgBox tabela.Text 'Funcionou perfeitamente (Só que obtive os dados de apenas uma pagina)
------------------------------------------------------------------------------------------
2.:
If tabela Is Nothing Then
MsgBox "Elemento não encontrado"
Else
MsgBox "Elemento encontrado!" 'Funcionou perfeitamente
------------------------------------------------------------------------------------------
As formas que tentei inserir os dados na planilha, mas não obtive exito.
destino.Value = Worksheets("Cruzamento").Cell("A1") 'Tentativa sem exito
Destination = Sheets("Cruzamento").Range("A1") 'Tentativa sem exito (Não aconteceu nada)
Destination = Worksheets("Cruzamento").Range("A1") 'Tentativa sem exito (Não aconteceu nada)
Destination = sht_Cruzamento.Range("A1") 'Tentativa sem exito (Não aconteceu nada)
End If
driver.Quit
MsgBox "Dados transferido com sucesso!"
End Sub