cascadia(GoのCSSセレクタライブラリ)

andybalholm/cascadiaは、GoでCSSセレクタを実装したライブラリ。golang.org/x/net/htmlパッケージが生成するHTMLパースツリー(DOM木)に対して、CSSセレクタでノードを検索できるようにする。

主なAPI

  • Query(n, m) — nの子孫からセレクタmにマッチする最初のノードを返す(マッチしなければnil)
  • QueryAll(n, m) — マッチする全ノードをスライスで返す
  • Goのコードを書かずにCSSセレクタの動作を試せる、パッケージの薄いラッパーであるコマンドラインツールcascadiaも同梱

Webスクレイピングやスクレイピング用途のHTML解析でCSSセレクタ的にノードを抜き出したいGoプログラムでよく使われる。jQueryライクなAPIを提供するgoqueryが内部でこのパッケージを利用している。他の類似ライブラリとの比較はGoのCSSセレクタ/HTMLパースライブラリを参照。

「Cascadia」という名前の衝突

「Cascadia」という名前は他にも複数の全く無関係なプロジェクト・概念で使われており紛らわしい。

  • Cascadia Code — Microsoftが開発した、Windows Terminal/Visual Studio向けのプログラミング用モノスペースフォント。104種類のリガチャを搭載。
  • Cascadia) — 太平洋岸北西部(ワシントン州・オレゴン州・ブリティッシュコロンビア州など)を指す地理・生態学的なバイオリージョン概念。行政区分ではなく流域を基準に定義される。

いずれも由来は「Cascade Range(カスケード山脈)」を連想させる語感で、直接の関係はない。

出典

作成日時: 2026-08-20 13:06 / 更新日時: 2026-08-20 13:31