Como extrair dados de um site com o Planilhas Google

Web scraping é uma técnica poderosa para extrair informações de sites e analisá-las automaticamente. Embora você possa fazer isso manualmente, pode ser uma tarefa tediosa e demorada. As ferramentas de web scraping tornam o processo mais rápido e eficiente, ao mesmo tempo que custa menos.

Curiosamente, o Planilhas Google tem potencial para ser sua ferramenta completa de scrapping na web, graças à função IMPORTXML. Com IMPORTXML, você pode extrair facilmente dados de páginas da web e usá-los para análises, relatórios ou qualquer outra tarefa baseada em dados.

A função IMPORTXML no Planilhas Google

O Planilhas Google oferece uma função integrada chamada IMPORTXML, que permite importar dados de formatos da web como XML, HTML, RSS e CSV. Esta função pode mudar o jogo se você deseja coletar dados de sites sem recorrer a codificação complexa.

Aqui está a sintaxe básica do IMPORTXML:

 =IMPORTXML(url, xpath_query) 
  • url: o URL da página da web da qual você deseja extrair dados.
  • xpath_query: A consulta XPath que define os dados que você deseja extrair.

XPath (XML Path Language) é uma linguagem usada para navegar em documentos XML, incluindo HTML – permitindo especificar a localização dos dados dentro de uma estrutura HTML. Compreender as consultas XPath é essencial para usar o IMPORTXML corretamente.

  7 Melhor Hospedagem de Servidor Unturned para Todos

Compreendendo o XPath

XPath fornece várias funções e expressões para navegar e filtrar dados em um documento HTML. Um guia abrangente sobre XML e XPath está além do escopo deste artigo, portanto, nos contentaremos com alguns conceitos essenciais de XPath:

  • Seleção de elementos: você pode selecionar elementos usando / e // para denotar caminhos. Por exemplo, /html/body/div seleciona todos os elementos div no corpo de um documento.
  • Seleção de Atributos: Para selecionar atributos, você pode usar @. Por exemplo, //@href seleciona todos os atributos href na página.
  • Filtros de predicado: você pode filtrar elementos usando predicados entre colchetes ([ ]). Por exemplo, /div[@class=”container”] seleciona todos os elementos div com o contêiner de classe.
  • Funções: XPath fornece várias funções, como contém(), começa com() e texto() para executar ações específicas, como verificação de conteúdo de texto ou valores de atributos.

Até agora, você conhece a sintaxe IMPORTXML, conhece a URL do site e sabe qual elemento deseja extrair. Mas como você consegue o XPath do elemento?

Você não precisa saber de cor a estrutura de um site para extrair seus dados com IMPORTXML. Na verdade, todo navegador possui uma ferramenta bacana que permite copiar instantaneamente o XPath de qualquer elemento.

A ferramenta Inspecionar elemento permite extrair o XPath dos elementos do site. Veja como:

  • Navegue até a página da web que deseja copiar usando seu navegador preferido.
  • Localize o elemento que deseja raspar.
  • Clique com o botão direito no elemento.
  • Selecione Inspecionar elemento no menu do botão direito. Seu navegador abrirá um painel que exibe o código HTML da página web. O elemento HTML relevante será destacado no código.
  • No painel Inspecionar elemento, clique com o botão direito no elemento destacado no código HTML.
  • Clique em Copiar XPath para copiar o endereço XPath do elemento para a área de transferência.
  •   Use teclados de uma mão para digitar melhor com a mão esquerda

    Agora que você tem tudo que precisa, é hora de ver o IMPORTXML em ação e extrair alguns links.

    Você pode usar IMPORTXML para extrair todos os tipos de dados de sites. Isso inclui links, vídeos, imagens e quase todos os elementos do site. Os links são um dos elementos mais importantes na análise da web, e você pode aprender muito sobre um site apenas analisando as páginas para as quais ele está vinculado.

    IMPORTXML permite que você extraia links rapidamente no Planilhas Google e, em seguida, analise-os ainda mais usando as várias funções que o Planilhas Google oferece.

    Para extrair todos os links de uma página da web, você pode usar a seguinte fórmula:

     =IMPORTXML(url, "//a/@href")  

    Esta consulta XPath seleciona todos os atributos href de um elemento, extraindo efetivamente todos os links da página.

     =IMPORTXML("https://en.wikipedia.org/wiki/Nine_Inch_Nails", "//a/@href") 

    A fórmula acima elimina todos os links de um artigo da Wikipedia.

    É uma boa ideia inserir o URL da página da web em uma célula separada e depois fazer referência a essa célula. Isso evitará que sua fórmula fique muito longa e pesada. Você pode fazer o mesmo com a consulta XPath.

    Para extrair o texto dos links junto com seus URLs, você pode usar:

     =IMPORTXML(url, "//a")  

    Esta consulta seleciona todos os elementos e você pode extrair o texto do link e os URLs dos resultados.

      Kanban vs Scrum: Diferenças

     =IMPORTXML("https://en.wikipedia.org/wiki/Nine_Inch_Nails", "//a") 

    A fórmula acima obtém os textos dos links no mesmo artigo da Wikipedia.

    Às vezes, pode ser necessário extrair links específicos com base em critérios. Por exemplo, você pode estar interessado em extrair links que contenham uma palavra-chave específica ou links localizados em uma seção específica da página.

    Com o conhecimento adequado de XPath, você pode localizar qualquer elemento que esteja procurando.

    Para extrair links que contêm uma palavra-chave específica, você pode usar a função contains() XPath:

     =IMPORTXML(url, "//a[contains(@href, 'keyword')]/@href")  

    Esta consulta seleciona atributos href de elementos onde href contém a palavra-chave especificada.

     =IMPORTXML("https://en.wikipedia.org/wiki/Nine_Inch_Nails", "//a[contains(@href, 'record')]/@href")

    A fórmula acima remove todos os links que contêm a palavra registro em seu texto em um exemplo de artigo da Wikipedia.

    Para extrair links de uma seção específica de uma página, você pode especificar o XPath da seção. Por exemplo:

     =IMPORTXML(url, "//div[@class="section"]//a/@href")  

    Esta consulta seleciona atributos href de elementos dentro de elementos div com a classe “seção”.

    Da mesma forma, a fórmula abaixo seleciona todos os links dentro da classe div que possuem a classe mw-content-container:

     =IMPORTXML("https://en.wikipedia.org/wiki/Nine_Inch_Nails", "//div[@class="mw-content-container"]//a/@href") 

    É importante notar que você pode usar IMPORTXML para mais do que web scraping. Você pode usar a família de funções IMPORT para importar tabelas de dados de sites para o Planilhas Google.

    Embora o Planilhas Google e o Excel compartilhem a maioria de suas funções, a família de funções IMPORT é exclusiva do Planilhas Google. Você precisará considerar outros métodos para importar dados de sites para o Excel.

    Simplifique a Web Scraping com o Planilhas Google

    Web scraping com Planilhas Google e a função IMPORTXML é uma forma versátil e acessível de coletar dados de sites.

    Ao dominar o XPath e entender como criar consultas eficazes, você pode desbloquear todo o potencial do IMPORTXML e obter insights valiosos de recursos da web. Então, comece a raspar e leve sua análise da web para o próximo nível!