2014/09/16

Recent entries from same category

  1. Zenn で Twitter bot 作成入門を書いた。
  2. プログラマーのための新しい情報共有コミュニティ Zenn で本を書いてみた。
  3. Windows ユーザは cmd.exe で生きるべき 2020年版
  4. Let's Encrypt を簡単操作できる CLI、Lego が MyDNS に対応した。
  5. golang でメモ専用コマンド「memo」作った。

2014年でも html を解析してゴニョゴニョするなんて要件はまだまだある訳で、そんな時に便利なのが pup というコマンドです。

EricChiang/pup - GitHub

README.md pup pup is a command line tool for processing HTML. It reads from stdin, prints to stdout,...

https://github.com/EricChiang/pup

通常、こういったツールは perl や ruby、python 等で提供されランタイムがインストールされていない環境で動かすのはちょっとした手間が発生していました。しかし pup ならば golang で出来ているのでバイナリ1つあれば動かせます。

使い方は、例えばこのサイトのパーマリンクのHTMLを得たいならば

curl -s http://mattn.kaoriya.net/ | pup a.permalink

とするだけ。CSS セレクタで指定します。またテキストを得たいならば

curl -s http://mattn.kaoriya.net/ | pup a.permalink text{}

といった具合です。一応バイナリリリースもされていますが現状 Windows で色付き表示(-c フラグ)でエスケープシーケンスが表示されてしまいます。

pull-request を送ってあるので、うまく行けばマージして貰えると思います。

追記: マージされました

Posted at by