DOMメソッド、CSSセレクター、XPathを使って実際のHTMLを解析、スクレイピング、編集、サニタイズできるJavaライブラリ。
beevik/etree
XMLを要素ツリーとして解析・検索・変更・出力できる軽量な純Goパッケージ。XPath風のパス検索にも対応。
- スター
- 1,672
- フォーク
- 191
- 未解決の Issue
- 4
- 最終コミット
- 先月
これは何?
etreeはXML文書を要素ツリーとして表現するため、Goでの走査、検索、変更を簡単に行えます。文書を一から構築できるほか、ファイル、バイトスライス、文字列、io.Readerから読み込み、スペースまたはタブによる任意のインデントを付けて出力できます。
子要素や属性を選択するシンプルなメソッドに加え、軽量なXPath風のパス検索を利用できます。パスは繰り返し検索に備えて事前にコンパイルでき、ダブルスラッシュによる再帰検索や、属性値・名前空間プレフィックス付きの値に対する述語をサポートします。設計はPythonのElementTreeモジュールに着想を得ています。
etreeは標準ライブラリ以外に依存しない純Go実装で、標準のencoding/xmlパッケージを基盤としています。Go 1.23以降が必要です。
主な機能
- 01XML文書を一から構築するほか、ファイル、文字列、バイトスライス、io.Readerから解析できます。
- 02シンプルなセレクターやXPath風のパス検索で、再帰検索や述語による検索も行えます。
- 03パスを事前コンパイルすることで、繰り返しの検索を効率化できます。
- 04シリアライズした出力にスペースまたはタブで自動的にインデントを付けます。
- 05純Go実装で、標準ライブラリ以外の依存関係はありません。
ユースケース
- GoサービスでXML設定ファイルを読み込み、変更する。
- Goコードからフィードや構造化データのエクスポートなどのXML文書を生成する。
- パス検索を使って、大きなXMLペイロードから特定の値を取り出す。
クイックスタート
- 1
go get で etree パッケージをインストールします
go get github.com/beevik/etree - 2
README の作成例にあるように、Go プログラムで新しい XML ドキュメントを作成し、stdout に出力します
トピック
よくある質問
- etree とは?
- XMLを要素ツリーとして解析・検索・変更・出力できる軽量な純Goパッケージ。XPath風のパス検索にも対応。 etreeはXML文書を要素ツリーとして表現するため、Goでの走査、検索、変更を簡単に行えます。文書を一から構築できるほか、ファイル、バイトスライス、文字列、io.Readerから読み込み、スペースまたはタブによる任意のインデントを付けて出力できます。
- etree は無料で使えますか?ライセンスは?
- etree は BSD-2-Clause ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- etree は今もメンテナンスされていますか?
- 半年以内に更新あり。etree の最終コミットは 2026年9月23日 です。
- etree は何に使えますか?
- GoサービスでXML設定ファイルを読み込み、変更する。 Goコードからフィードや構造化データのエクスポートなどのXML文書を生成する。 パス検索を使って、大きなXMLペイロードから特定の値を取り出す。
- etree のインストール方法は?
- go get で etree パッケージをインストールします: go get github.com/beevik/etree README の作成例にあるように、Go プログラムで新しい XML ドキュメントを作成し、stdout に出力します
- etree はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/beevik/etree
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
サーバーやブラウザーでHTML・XMLを解析、操作できる高速なjQuery風ライブラリ。
three.js向けのWebGPUパストレーシングレンダラー。three-mesh-bvhを使って、ブラウザー上で物理ベースの画像を生成します。
HTTP、ネットワーク、データベース、XML/JSON、ログ機能を備えた、ネットワーク中心のアプリケーション構築向けクロスプラットフォームC++クラスライブラリ。
REST・SOAPサービスをプロキシし、OpenAPIによるAPIデプロイ、WSDLからOpenAPIへの変換、OAuth2/JWTによるセキュリティ、メッセージ検証を提供するオープンソースAPIゲートウェイ。
JSON、YAML、CSV、XMLをインタラクティブなグラフに変換し、形式変換やコード生成もできるオープンソースのJSONエディター。