Como fazer scraping com o Excel?

Autor :

Reagir :

Comentário

Sabia que era possível fazer raspagem da web com o Excel? Graças ao Power Query e VBA, pode importar, estruturar e atualizar dados sem recorrer a ferramentas complexas.

É perfeitamente possível extrair dados da web para o Excel.
É perfeitamente possível extrair dados da web para o Excel. ©Christina para Alucare.fr

Como extrair dados de uma página web para o Excel com o Power Query?

✅ Power Query é uma ferramenta integrada ao Excel. Serve para importar, transformar e analisar dados. Com ela, pode:

  • 🔥 Recuperar dados da web, de um ficheiro, de uma base de dados, etc.
  • 🔥 Limpar ou transformar esses dados.
  • 🔥 Carregar automaticamente os dados.

É o método mais simples para fazer scraping com o Excel. Descubra os passos a seguir.

Etapa 1: Aceder à ferramenta de importação

No Excel, vá para Dados > Obter dados > A partir da web.

Abra uma nova folha do Excel, vá em "Dados", depois em "Obter dados" e, em seguida, em "Da Web".
Abra uma nova folha do Excel, vá em “Dados”, depois em “Obter dados” e, em seguida, em “Da web”. ©Christina para Alucare.fr

Etapa 2: Colar o URL da página web

Cole o endereço do site ou da página que contém os dados que deseja extrair.

Cole o endereço do site ou da página de destino.
Cole o endereço do site ou da página de destino. ©Christina para Alucare.fr

Etapa 3: Navegar no “Navegador”

Uma janela será aberta com as tabelas detetadas. Selecione a tabela ou os dados relevantes. Exemplo: uma tabela HTML.

Selecione a tabela ou os dados.
Selecione a tabela ou os dados. ©Christina para Alucare.fr

Etapa 4: Carregar os dados numa folha Excel

Clique em Carregar para importar diretamente os dados para a sua folha Excel.

Carregue para importar os dados.
Carregar para importar os dados. ©Christina para Alucare.fr

💡 Para obter as informações mais recentes do site, atualize os dados. Clique com o botão direito do rato na sua tabela > Atualizar.

Como fazer scraping com VBA e macros do Excel?

✅ VBA Onde Visual Basic for Applications é uma linguagem de programação integrada ao Excel e a outros softwares do Microsoft Office. Ela é usada para:

  • 🔥 Automatizar tarefas repetitivas.
  • 🔥 Criar macros, ou seja, pequenos programas que são executados no Excel.
  • 🔥 Abra uma página da Web, recupere texto ou tabelas e cole-os diretamente no Excel.

Embora mais complexo, o VBA oferece um controlo avançado : navegação entre páginas, conexão com autenticação, extração de dados dinâmicos, etc.

Aqui está um exemplo de macro que recupera uma tabela HTML de uma página:

Sub ScraperTableau() ' Declaração dos objetos Dim http As Object, html As Object Dim tabela As Object, linha As Object, célula As Object Dim i As Long, j As Long

    ' URL da página a ser extraída Dim url As String url = "https://www.w3schools.com/html/html_tables.asp" ' Criação de um objeto HTTP Set http = CreateObject("MSXML2.XMLHTTP") http.Open "GET", url, False
    http.Send ' Carregar o conteúdo HTML Set html = CreateObject("HTMLFile") html.body.innerHTML = http.responseText ' Seleção da primeira tabela encontrada Set tabela = html.getElementsByTagName("table")(0) ' Loop nas linhas e colunas
    For i = 0 To tabela.Linhas.Comprimento - 1 For j = 0 To tabela.Linhas(i).Células.Comprimento - 1 Células(i + 1, j + 1).Valor = tabela.Linhas(i).Células(j).innerText Next j Next i End Sub

👉 Explicação do código: 

  • Dim http como Objeto, html como Objeto : Criação de objetos para gerir a solicitação web e o conteúdo HTML.
  • url = "..." : URL do site a ser rastreado.
  • http.Open "GET", url, False : Envio de uma solicitação HTTP para carregar a página.
  • html.body.innerHTML = http.responseText : Insira a resposta HTML num objeto manipulável.
  • Definir tabela = html.getElementsByTagName("table")(0) : O nosso alvo é o primeiro quadro da página
  • Dupla volta Para i … Para j … : Lemos cada célula da tabela e colamos no Excel (célula correspondente).

👉 Casos de uso do VBA para scraping

  • Páginas que requerem autenticação (login/palavra-passe).
  • Páginas dinâmicass onde o Power Query não funciona.
  • Recuperar várias tabelas da mesma página ou navegar entre várias páginas.
  • Automatização : programar a atualização diária dos dados com um botão ou um acionador.

Power Query vs. VBA: qual método escolher para fazer scraping com o Excel?

A escolha entre Power Query e VBA será feita de acordo com as suas necessidades. Aqui está uma pequena comparação para escolher o método mais adequado.

Critérios Power Query VBA
Facilidade de utilização Muito simples Complexo, requer código
Flexibilidade Limitado a dados tabulares Muito flexível, controlo total
Curva de aprendizagem Fraco Elevado
Casos de uso Extração rápida de tabelas HTML Páginas complexas, autenticação,
automação avançada

➡ Em resumo, Power Query é perfeito para iniciantes e para a maioria das tarefas básicas, enquanto VBA é para utilizadores avançados com necessidades específicas.

Quais são as alternativas ao Excel para web scraping?

O Excel é prático, mas limitado. Para projetos mais ambiciosos, existem alternativas poderosas.

Ferramentas sem código/com pouco código

Eles permitem extrair dados da web sem escrever código. Citamos :

  • Dados brilhantes : uma solução profissional, potente e escalável.
  • Octoparse : fácil de usar, com uma interface visual simples, perfeito para iniciantes.
Bright é uma infraestrutura de dados web ilimitada para IA e BI.
Bright é uma infraestrutura de dados web ilimitada para IA e BI. ©Christina para Alucare.fr

Linguagens de programação

Eles permitem raspar sites de forma muito flexível. Pode navegar em várias páginas automaticamente, gerir sites com autenticação, etc.

Se procura uma solução potente, ideal para projetos complexos, opte pelo recolha de dados da Web com Python.

👉 Vamos ver rapidamente quais são as soluções que superam o Excel em termos de potência, flexibilidade e simplicidade.

Ferramenta/Linguagem Custo Complexidade Poderoso
Excel (Power Query) Depende do pacote Office Fácil Básico
Excel (VBA) Gratuito (com uma licença do Office) Significa Significa
Dados brilhantes Assinatura mensal Significa Muito elevada
Octoparse Assinatura mensal Fácil Significa
Python (BeautifulSoup, Scrapy) Livre Elevado Muito elevada

Que ferramentas e recursos podem ajudar a fazer scraping com o Excel?

Se quiser aprofundar os seus conhecimentos sobre scraping com o Excel, pode combiná-lo com outras ferramentas, como as bibliotecas e a extensões do browser.

Por exemplo :

A raspagem da Web é legal?

a O web scraping é legal sob certas condições. Tudo depende do cumprimento dos Termos e Condições Gerais do site, da propriedade intelectual e do uso dos dados.

💬 Para concluir, é possível e acessível fazer scraping com o Excel, especialmente com Power Query. Para necessidades mais avançadas, o VBA oferece um controlo avançado, mas outras ferramentas como Dados brilhantes Onde Python são, por vezes, mais adequados.

Gostou? Partilhe-o!

Este conteúdo é originalmente em francês (Ver o editor logo abaixo). Foi traduzido e revisto em várias línguas utilizando o Deepl e/ou a API do Google Translate para oferecer ajuda no maior número possível de países. Esta tradução custa-nos vários milhares de euros por mês. Se não estiver 100 % perfeita, deixe-nos um comentário para que a possamos corrigir. Se estiver interessado em rever e melhorar a qualidade dos artigos traduzidos, envie-nos um e-mail utilizando o formulário de contacto!
Agradecemos os seus comentários para melhorar o nosso conteúdo. Se quiser sugerir melhorias, utilize o nosso formulário de contacto ou deixe um comentário abaixo. Os seus comentários ajudam-nos sempre a melhorar a qualidade do nosso sítio Web Alucare.fr


Alucare é um meio de comunicação social independente. Apoie-nos adicionando-nos aos seus favoritos do Google News:

Publicar um comentário no fórum de discussão