Repolode
beevik

beevik/etree

Pacote leve, escrito inteiramente em Go, que analisa, consulta, modifica e grava XML como uma árvore de elementos, com consultas por caminhos semelhantes a XPath.

Estrelas
1,672
Forks
191
Issues abertas
4
Último commit
mês passado

O que é?

etree representa documentos XML como árvores de elementos, o que facilita percorrê-los, pesquisá-los e alterá-los em Go. É possível criar um documento do zero ou lê-lo de um arquivo, de um slice de bytes, de uma string ou de um io.Reader e gravá-lo novamente, com indentação opcional usando espaços ou tabulações.

O pacote oferece métodos simples para selecionar elementos filhos e atributos, além de consultas leves por caminhos semelhantes a XPath. Os caminhos podem ser compilados antecipadamente para buscas repetidas e oferecem suporte a buscas recursivas com barras duplas e predicados, como correspondências de valores de atributos ou com prefixo de namespace. Seu design foi inspirado no módulo ElementTree do Python.

etree é implementado inteiramente em Go, depende apenas da biblioteca padrão e se baseia no pacote padrão encoding/xml. Requer Go 1.23 ou posterior.

Recursos principais

  • 01Cria documentos XML do zero ou os analisa a partir de arquivos, strings, slices de bytes e io.Reader.
  • 02Faz buscas com seletores simples ou consultas por caminhos semelhantes a XPath, incluindo buscas recursivas e baseadas em predicados.
  • 03Caminhos pré-compilados permitem fazer consultas repetidas com eficiência.
  • 04Indenta automaticamente a saída serializada com espaços ou tabulações.
  • 05Implementado inteiramente em Go, sem dependências além da biblioteca padrão.

Casos de uso

  • Ler e modificar arquivos de configuração XML em um serviço Go.
  • Gerar documentos XML, como feeds ou exportações estruturadas, a partir de código Go.
  • Extrair valores específicos de grandes payloads XML usando consultas por caminhos.

Início rápido

  1. 1

    Instale o pacote etree com go get

    go get github.com/beevik/etree
  2. 2

    Crie um novo documento XML e escreva-o em stdout no seu programa Go, como mostrado no exemplo de criação do README

Tópicos

#xml#go#xpath#xml-parser#dom#etree#path

Perguntas frequentes

O que é etree?
Pacote leve, escrito inteiramente em Go, que analisa, consulta, modifica e grava XML como uma árvore de elementos, com consultas por caminhos semelhantes a XPath. etree representa documentos XML como árvores de elementos, o que facilita percorrê-los, pesquisá-los e alterá-los em Go. É possível criar um documento do zero ou lê-lo de um arquivo, de um slice de bytes, de uma string ou de um io.Reader e gravá-lo novamente, com indentação opcional usando espaços ou tabulações.
etree é gratuito? Qual é a licença?
etree é open source sob a licença BSD-2-Clause. Confira os termos da licença antes de usá-lo em produtos comerciais.
etree ainda é mantido?
Atualizado nos últimos 6 meses. O último commit de etree foi em 23 de set. de 2026.
Para que posso usar etree?
Ler e modificar arquivos de configuração XML em um serviço Go. Gerar documentos XML, como feeds ou exportações estruturadas, a partir de código Go. Extrair valores específicos de grandes payloads XML usando consultas por caminhos.
Como instalar etree?
Instale o pacote etree com go get: go get github.com/beevik/etree Crie um novo documento XML e escreva-o em stdout no seu programa Go, como mostrado no exemplo de criação do README
Onde consigo etree?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/beevik/etree

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados

Biblioteca Java para analisar, extrair, editar e sanitizar HTML do mundo real usando métodos DOM, seletores CSS e XPath.

Backend e APIs#java#html-parser#web-scraping
11,4 mil2,3 milJavaMITBem mantidoAtualizado anteontem