Pythonでmouseモジュールを使ってマウスの位置を取得する

スポンサーリンク

Pythonでmouseモジュールを使ってマウスの位置を取得してみます。

今回はmouseモジュールを用います。このライブラリ、モジュールはPythonの標準ライブラリではありませんので、事前にインストールする必要があります。

■Python

今回のPythonのバージョンは、「3.10.9」を使用しています。(Windows11)(pythonランチャーでの確認)

■mouseモジュールを使ってマウスの位置を取得する

では、早速mouseモジュールを使ってマウスの位置を取得するスクリプトを書いていきます。

■コード

import mouse
import time

def main():
    print("マウスの位置を取得します。5秒後にクリックします。")
    
    # マウスの位置を取得
    x, y = mouse.get_position()
    print(f"現在のマウスの位置:x={x}, y={y}")

    # 5秒待機
    time.sleep(5)

    # マウスの位置を取得してからクリック
    x, y = mouse.get_position()
    print(f"クリックする位置:x={x}, y={y}")
    mouse.click()

if __name__ == "__main__":
    main()

まずはmouseモジュールとtimeモジュールをインポートします。mouseモジュールはマウスの制御に、timeモジュールは時間の待機に使用されます。

次にmainという名前の関数が定義します。これはプログラムのメインの処理を実行する関数です。この関数は後で呼び出されます。次にprint(“マウスの位置を取得します。5秒後にクリックします。”)`:と記述し、コンソールにメッセージを表示します。プログラムがどのような処理を行うかをユーザーに知らせるためのメッセージです。更にx, y = mouse.get_position()と記述し、mouse.get_position()関数を使って、現在のマウスの位置を取得しています。取得した位置は変数`x`と`y`に格納されます。

格納後、print(f”現在のマウスの位置:x={x}, y={y}”)と記述し、`x`と`y`に格納された現在のマウスの位置を表示します。

次にtime.sleep()関数を使って、プログラムが5秒間待機します。これにより、マウスの位置を取得した後に5秒間待ってから次の処理を行います。さらに再びmouse.get_position()関数を使って、5秒後の時点でのマウスの位置を再度取得しています。この位置がクリックする位置となります。

その後、print(f”クリックする位置:x={x}, y={y}”)と記述し、5秒後の時点でのクリックする位置を表示します。

次にmouse.click()関数を使って、指定した位置`x`と`y`でマウスをクリックします。

最後にif __name__ == “__main__”:と記述します。これはプログラムを実行した際に`main()`関数を呼び出すための条件文です。これにより、このスクリプトファイルが他のファイルからインポートされた場合に`main()`関数が実行されないようにしています。`__name__`は、Pythonの特殊な変数で、スクリプトが実行されるときには`”__main__”`という値を持ちます。

注意点として、このプログラムはマウスを実際にクリックするため、実行する際には他のアプリケーションの操作に影響を及ぼす可能性がある

■実行・検証

このスクリプトを「m_test.py」という名前で、Pythonが実行されている作業ディレクトリ(カレントディレクトリ)に保存し、コマンドプロンプトから実行してみます。

実行してみると、コンソールに現在のマウスの位置が表示されることを確認できました。

コメント

タイトルとURLをコピーしました