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.
últimas postagens
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.
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:
Agora que você tem tudo que precisa, é hora de ver o IMPORTXML em ação e extrair alguns links.
Como extrair links de um site com IMPORTXML
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.
1. Raspar todos os links
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.
2. Raspar todos os textos do link
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.
=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.
Como extrair links específicos de um site com IMPORTXML
À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.
1. Extração de links contendo uma palavra-chave
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.
2. Extração de links dentro de uma seção
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!