毎朝決まった動きをパソコンですることがあり(Web画面にログイン→情報を取得した後、Windowsのアプリをクリックして立ち上げる)なんとか自動で出来ないかと調べたことがありました。
Pythonとpyautoguiというライブラリを使うことでマウスの動きやクリックなどを、人が手でする手順を代わりにプログラムですることが出来ます。
実際にしたかった事には、マウスの動き意外にもWeb画面へログインするなどがありましたが(個人情報なども含むので)そこは省略します。
今回はマウスを動かす&クリックするというシンプルな例です。
内容はかなり基本ですので、Pythonを使い始めた初心者の方向けです。
Pyautoguiを使ってマウスを動かす方法
pythonがインストールされている状態で、pip installでpyautoguiを追加します。
pip install pyautogui
ある地点(x軸,y軸)まで移動してクリックするというシンプルなプログラムです。
まずどこをクリックするのかマウスカーソルのx,y軸がどこにあるのか知る必要があります。
(ついでに画面のサイズも取得します)
# get_xy_position.py
import pyautogui
print(pyautogui.size())
print(pyautogui.position())
マウスカーソルを合わせた状態でget_xy_positon.pyを実行するとコンソール上に
Size(width=1920, height=1080)
Point(x=182, y=86)
という風に出力されます。
Sizeはディスプレイの解析度が表示されます(念の為ですが範囲外の値を入力しないようにチェックしておきましょう。)
Point部分のマウスの位置によってこのx,yの値は変わります。
次に、その位置に対してマウスを動かしてクリックするプログラムです。
# mouse_move_to_positon.py
import pyautogui
duration= 0.5
x_position = 100
y_position = 100
pyautogui.moveTo(x_position, y_position, duration)
pyautogui.clik()
x_positionには動かした範囲のx軸を
y_positionには動かした範囲のy軸をそれぞれ指定します。
durationはマウスを動かすスピードです。
durationの数字を大きくするほど動くスピードがゆっくりになります。
pyautogui.moveToの後にpyautogui.click()を指定することで指定した位置でクリックをすることができます。
今回は、マウスを動かす簡単なプログラムになりました。
これを組み合わせていく事でより複雑なことが出来るようになると思います。
お役に立っていれば嬉しいです。