コマンドラインでHTMLパーサするために pup を入れる(導入)
**pup** は、HTMLをCSSセレクタで解析できる軽量なコマンドラインツールです。 WebスクレイピングやHTMLの一部抽出を簡単に行いたいときに非常に便利です。
pup は、HTMLをCSSセレクタで解析できる軽量なコマンドラインツールです。
WebスクレイピングやHTMLの一部抽出を簡単に行いたいときに非常に便利です。
この記事では、Homebrew を使って pup をインストールし、Macで実際に使えるようにするまでの手順を紹介します。
環境は macOS + zsh(Oh My Zsh 使用)です。
インストール方法#
公式Formulaページはこちら:
https://formulae.brew.sh/formula/pup
インストールは Homebrew で一発です。
brew install pup入れましたが動きませんでした。
❯ pup --versionPassword:sudo: port: command not foundalias がすでに貼られていて動かなかった#
私は Oh-my-zsh を使っているのですが、何か別の alias が貼られていました。
❯ which puppup: aliased to psu && puoMacPorts用のコマンド?のようですが、Homebrew を使っていて MacPorts は不要ですので、この alias は不要です。
MacPorts を使っている方は \pup でバックスラッシュをつければネイティブのコマンドを叩けるのでそちらで対応するのが良いかと思います。
pupのaliasを unalias で解除します。
unalias pup再度確認すると、正しい実行ファイルが参照されていることが分かります。
❯ which pup/opt/homebrew/bin/pup動作確認#
例として、example.com の
❯ curl -s https://example.com | pup 'title text{}'Example Domain
❯ curl -s https://example.com | pup 'a attr{href}'https://www.iana.org/domains/example問題なく HTML をパースできています。