PythonでPillow(PIL)モジュールを使用しスクリーンショットを撮ってみます。
なお、Pillow(PIL)モジュール・ライブラリは、Pythonの標準ライブラリではありませんので、事前にインストールする必要があります。
■Python
今回のPythonのバージョンは、「3.8.5」を使用しています。(Windows10)(pythonランチャーでの確認)
■Pillow(PIL)モジュールを使用しスクリーンショットを撮る
では、早速Pillow(PIL)モジュールを使用しスクリーンショットを撮るスクリプトを書いていきます。
■コード
from PIL import ImageGrab screenshots = ImageGrab.grab() screenshots.save(r'C:\Users\user_\test\screenshots1.png')
スクリーンショットを撮る場合は、importでPILライブラリからImageGrabモジュールを呼び出します。
その後にscreenshotsという変数を定義し、その中にImageGrab.grab()関数を使用します。ImageGrab.grab()関数を使用することで、画面のスナップショットを撮影することができます。今回はImageGrab.grab()関数の括弧内には、引数,パラメーターを渡しません。渡さないことで、デフォルトで、画面全体のスナップショットが撮影されるようになっています。
撮影した画面全体のスナップショットを、screenshots変数内に格納します。
格納後、save()関数を使用します。save()関数の括弧内に引数,パラメータとして、撮影した画面全体のスナップショットを保存する場所を渡します。
今回保存する場所は、上記の「C:\Users\user_\test(フォルダパス)」となります。
■実行・検証
このスクリプトを「screenshots_test.py」という名前でPythonが実行されている作業ディレクトリ(カレントディレクトリ)内に保存し、コマンドプロンプトから実行してみます。
実行してみると、今回のスクリプトにはスナップショット撮影後に「撮影完了」といった文字列をprint()関数で出力するという処理は行っていないので、何も表示されません。
表示されませんが、画面のスナップショットの保存場所を確認すると、「screenshots1.png」というpng形式の画像ファイルが保存されていることが確認できました。
画像ファイルを開いてみると、Windows10のデスクトップ画面全体のスクリーンショットが撮影されていることが確認できました。
コメント