Python

デスクトップのスクリーンショットをPythonで撮影するには?

デスクトップのスクリーンショットをPythonで撮影するには?

画像の加工はPythonでもできることが分かったので、次は素材集めについて考えてみました。
将棋の図面はスクリーンショットで撮ることが多いので、これをPythonで自動化できないか?
実用レベルにするにはさまざまな事を組み合わせますが、まずはPythonでスクリーンショットを撮る方法をまとめました。

 

準備するものは?

スクリーンショットもライブラリ「Pillow」で撮影できます。
インストールしてない場合は、コマンドプロンプトで下記のコードを実行します。

pip install Pillow

 

コードの書き方は?

ImageGrab.grab()」を使います。
これだけで、デスクトップ全体のスクリーンショットが保存できます。

from PIL import ImageGrab
 
ImageGrab.grab().save("デスクトップ全体のスクリーンショット.png")

画面の一部だけで良ければ、引数「bbox」に左上と右下の座標を指定します。

from PIL import ImageGrab
 
# (100, 100)から(200, 200)までの矩形を保存する
ImageGrab.grab(bbox = (100, 100, 200, 200)).save("デスクトップ一部のスクリーンショット.png")

 

まとめ

Pythonでデスクトップのスクリーンショットを撮りたい場合は、ライブラリ「Pillow」の「ImageGrab.grab()」を使えば良いです。
「Pillow」は画像への文字入れで使ったので、なじみのあるライブラリで実現できたのは驚きました。

-Python
-, , , , , ,