ITエンジニア/デザイナ向けにオープンソースを毎日紹介

HTMLの中から指定したDOMを探し出すにはXPathまたはCSSセレクタを使う方法が考えられます。jQueryなりを使って利用する人が多いと思いますが、今回はWebブラウザを使わずにターミナルで行うケースを考えます。

そのためのツールがcssgrepです。まるでファイルをgrepするようにXPathやCSSセレクタを使ったテキスト抽出ができます。

cssgrepの使い方

MOONGIFTで試したところ。
MOONGIFTで試したところ。

サンプルのコードは次のようになっています。

curl http://linuxfr.org/ | ./cssgrep.rb '#friends li:nth-child(even)'
<li><a href="http://www.agendadulibre.org/">Agenda du libre</a></li>
<li><a href="http://fr.lolix.org/">Lolix</a></li>
<li><a href="http://www.editions-eyrolles.com/Recherche/?q=linux">Eyrolles</a></li>
<li><a href="http://www.venividilibri.org/">Veni, Vedi, Libri</a></li>
<li><a href="http://www.linuxgraphic.org/">LinuxGraphic</a></li>
<li><a href="http://www.laquadrature.net/">La Quadrature du Net</a></li>
<li><a href="http://lea-linux.org">Lea-Linux</a></li>

cssgrep.rbはCSSセレクタを使ったgrepができます。evenなどを使って細かな指定が可能です。xpathgrep.rbはXPathを使ったgrepになります。どちらも好みに応じて使い分ければ良いでしょう。

cssgrepはRuby製、MIT Licenseのオープンソース・ソフトウェアです。

nono/cssgrep

 

MOONGIFTの関連記事

コメント

  • DevRel
  • Com2