mk-mode BLOG

このブログは自作の自宅サーバに構築した Debian GNU/Linux で運用しています。
PC・サーバ構築等の話題を中心に公開しております。(クローンサイト: GitHub Pages

ブログ開設日2009-01-05
サーバ連続稼働時間
Reading...
Page View 合計
Reading...
今日
Reading...
昨日
Reading...

Linux - コマンドで Web ページのキャプチャ!

[ pc_tips ] [ LMDE2, Linux ]

こんばんは。

Linux のコマンドラインから Web ページ(HTML)をキャプチャ(PDF, PNG 化等)する方法についての記録です。

0. 前提条件

  • LMDE2 (Linux Mint Debian Edition 2; 64bit) での作業を想定。
  • キャプチャには wkhtmltopdf コマンドを使用する。

1. パッケージのインストール

wkhtmltopdf をインストールすると、 wkhtmltopdf コマンド以外に wkhtmltoimage コマンドも使用できるようになる。

1
$ sudo apt install wkhtmltopdf

2. Web ページの PDF 化

wkhtmltopdf コマンドの引数に対象ページの URL と出力ファイル名を指定して実行。

1
$ wkhtmltopdf http://example.com/foo.html example_foo.pdf
  • オプション無指定で「A4 縦」とみなされる。

3. Web ページの PNG 化

wkhtmltoimage コマンドの引数に対象のページの URL と出力ファイル名を指定して実行。

1
$ wkhtmltoimage http://example.com/foo.html example_foo.png
  • 出力ファイルの拡張子で画像フォーマットが自動判別される。(JPEG なら jpg にする等)

4. その他

個人的には、オプション無しのデフォルト設定で事足りている。

サイズやフォント等を詳細に設定したければ、ヘルプ/マニュアル参照のこと。

1
2
3
4
$ wkhtmltopdf -h
$ wkhtmltoimage -h
$ man wkhtmltopdf
$ man wkhtmltoimage

-h--help でもよい。 -H にすると拡張ヘルプ。

5. 参考サイト


自動で定期的に Web サイトのキャプチャを取りたい場合、シェルスクリプトを作成して cron 登録するとよいでしょう。

当方は、 Web スクレイピングで気になる状態になった場合にキャプチャして確認したりしています。

以上。

Comments