scrot で 1 時間ごとにスクリーンショットを撮る Cronjob

scrot で 1 時間ごとにスクリーンショットを撮る Cronjob

ユーザーの 1 人は、1 時間ごとに Web ページのスクリーンショットを撮る必要があります。scrot というユーティリティを見つけることができ、1 時間ごとに実行する cronjob を簡単に設定できました。

私の問題は、両方のモニターのスクリーンショットを撮ることと、ミント デスクトップ マシンで X サーバーの表示が設定されている方法ですが、Display:=0両方が同じ画面の下にあるため、それを行うことはできません。

さらに詳しく調べてみると、scrot には画面を選択できる対話型オプション (自動でなければならないため、私の環境では機能しません) と現在フォーカスされているオプションがあり、これは機能する可能性はありますが、スクリーンショットが必要な CLI の Chrome ウィンドウにフォーカスする方法が見つかりません。

スクリプトに焦点を当てることや、別の/より良い解決策に関するアイデアがあれば、ぜひ教えてください。

答え1

どうやら、あなたのタスクにはるかに適した他のツールがあるようです。

ページレス CLI

NodeJS ツール。次のコマンドでインストールします:

sudo npm install -g pageres-cli

次に、単純に次のようにします。

pageres-cli google.com

ファイアフォックス

Firefox 57 以降では、次の操作を実行します。

firefox -screenshot google.png google.com --window-size=1366,768

かわいい

インストール(Ubuntuの場合):

sudo apt install cutycapt

実行:

cutycapt --url=google.com --out=google.png --min-width=1366 --min-height=768

私は個人的にFirefoxの方法を好みます。なぜならFirefoxはどこにでもあるアプリだからです。

関連情報