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(カスケード山脈)」を連想させる語感で、直接の関係はない。