Blog

Postado em em 23 de outubro de 2021

Como usar o Selenium no VBA para Buscar Informações na WEB

Você sabe como usar o Selenium no VBA para buscar informações da Web? Dessa forma não vai ter que usar o Internet Explorer!

Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo!

Para receber por e-mail o(s) arquivo(s) utilizados na aula, preencha:

A pedido de vocês hoje nós trouxemos uma aula diferente: webscraping no VBA com Selenium, para que você possa fazer uma automação web com VBA sem utilizar o Internet Explorer.

Como algumas pessoas não sabem o que é Webscraping vou explicar de forma breve, nada mais é do que uma busca de informações na web.

Se traduzir ao pé da letra, teríamos uma raspagem na internet, ou seja, vamos de fato buscar informações na internet. Você faz isso todos os dias, só que a ideia é automatizar esse processo para que você não precise ficar repetindo as mesmas tarefas.

Agora o que é o Selenium? Ele é uma ferramenta que vai permitir com que o seu computador acesse a internet e faça essa busca. Com ele você vai conseguir conectar o VBA com o seu navegador para fazer algumas buscas.

Irado não é mesmo?

Muitos de vocês falaram no vídeo de como buscar preços na web com VBA que gostariam de fazer uma busca com outros tipos de navegadores.

Por esse motivo vou te mostrar como buscar preços na web com Selenium, que nada mais é do que um framework para fazer automações web.

Dessa forma você vai poder utilizar um webdriver, que é um driver do seu navegador para fazer essas buscas.

Assim você vai poder escolher qual navegador deseja utilizar, basta baixar o webdriver correto para o seu navegador e utilizá-lo tranquilamente!

Download do Selenium e ChromeDriver

E aí, pronto para fazer sua automação web com Selenium?

Baixar o Selenium VBA

Em um primeiro momento precisaremos baixar para o computador a biblioteca de comandos, objetos e métodos do Selenium.

Elas devem ser instaladas no seu computador com o instalador do programa, normalmente.

Esses serão usados e acessados para que o VBA faça essa integração com os outros navegadores que não sejam o Internet Explorer (integração nativa).

Logo após você terá, com o VBA aberto, que:

  • Ir na guia Ferramentas
  • Referências…
  • Marcar a caixinha correspondente ao “Selenium Type Library” (como na foto abaixo)
  • OK
Selenium VBA
Selenium VBA

Pronto. A partir daqui sua biblioteca Selenium estará ativada para uso em seu VBA.

Baixar o ChromeDriver

Imagem2 6

Além da biblioteca de comandos do Selenium, nós precisaremos fazer o download dos drivers dos navegadores extras (não nativos – Opera, Mozzilla, Google Chrome).

Esses drivers serão acessados e utilizados justamente pela biblioteca instalada o Selenium, para que o VBA possa fazer a comunicação/integração dos códigos e fazer ações nos navegadores.

Teremos que instalar esses drivers no local específico do computador onde estará instalado o Selenium. Abaixo mostramos um exemplo de onde ele pode/deve estar instalado:

  • C:UsersDiego AmorimAppDataLocalSeleniumBasic

OBS: cada computador tem um caminho específico, que não é exatamente igual ao mostrado acima.

Código para Buscar Preços (Selenium no VBA)

A ideia aqui é te mostrar o código que nós vamos utilizar e fazer alguns comentários sobre o código para que você entenda como ele funciona e como estamos utilizando o selenium para fazer essa automação.

Lembre-se de que você vai poder modificar esse código depois para se ajustar as suas necessidades, então primeiro teste igual vamos mostrar, depois você vai adaptando para automatizar suas tarefas!

Código de aula e comentários

Sub buscarPreco()

'Selenium VBA
'https://github.com/florentbr/SeleniumBasic/releases/tag/v2.0.9.0

'Chromedriver (C:UsersDiego AmorimAppDataLocalSeleniumBasic)
'https://chromedriver.chromium.org/home


Dim Navegador As New ChromeDriver

Navegador.AddArgument ("--headless")


Navegador.Get (Cells(2, 3).Value)

Cells(2, 2).Value = Navegador.FindElementById("price_inside_buybox").Attribute("innerText")

Navegador.Quit

End Sub

Comentários sobre a macro buscarPreco():

  • Vamos começar a sub dimensionando a variável “Navegador” como um novo ChromeDriver, que vai de fato ser a sessão do Google Chrome a ser aberta pelo VBA
  • Para o “Navegador” criado vamos adicionar o argumento “sem cabeça”. Ou seja, ao ser aberto, o navegador não vai ser mostrado, por opção nossa
  • Vamos visitar o site que está na célula na linha 2 e na coluna 3 (coluna C) (ou seja, a célula C2) da nossa planilha, ou seja, para onde vamos navegar de fato.
  • Vamos colocar na célula da linha 2 e coluna 2 (coluna B) (ou seja, a célula B2) o texto (que será o nosso preço) que for localizado no atributo “innerText” do que estiver no elemento “price_inside_buybox”
  • Fecharemos (quit, em inglês) o nosso Navegador
  • Se encerra o nosso código

Ao final do código, teremos o preço pesquisado na célula B2 adquirido a partir da visita ao site que está contido na célula C2, como abaixo:

Imagem3 5

Conclusão – Como usar o Selenium no VBA

Nessa aula iradíssima no VBA você aprendeu como usar o Selenium no VBA para fazer Webscraping no VBA!

É uma forma de usar outros navegadores (além do Internet Explorer) para realizar ações através do VBA!

Com isso pudemos fazer uma pesquisa de preços utilizando o Google Chrome, por exemplo, na aula de hoje.

Nós utilizamos um código parecido com o que já vimos na aula de Automação Web e vamos acrescentar uma parte do código para buscar com Selenium VBA.

Fique ligado no nosso canal do Youtube para mais conteúdo de VBA toda semana! Valeu, até a próxima!

Hashtag Treinamentos

Para acessar outras publicações de VBA, clique aqui!


Quer aprender mais sobre VBA com um minicurso básico gratuito?

Quer sair do zero no Python e virar uma referência na sua empresa? Inscreva-se agora mesmo no Python Impressionador