Python pyautoguiモジュール-マウスキーボードの自動化を実現
本稿では、Pythonのpyautoguiモジュールを用いてマウスの自動移動とキーボードの自己入力を実現する方法を簡単に紹介する.このモジュールはPythonが付属していないため、以下のコマンドを実行してインストールします.
123
公式ドキュメントの紹介:https://pyautogui.readthedocs.io/en/latest/
pyautoguiモジュールを使用してマウスの移動を制御するsize():画面解像度を取得する 123 moveTo():マウスの移動に使用 1
このコードはmoveTo()関数を呼び出し、x,y座標をパラメータとして受け入れ、オプションの持続時間パラメータを持つ.この関数は、現在位置から(x,y)座標で指定する位置にマウスポインタを移動させ、移動にかかる時間を持続時間パラメータで指定する.このPythonスクリプトを保存して実行すると、マウスポインタが魔法をかけられたように、現在の位置から座標位置(100,100)に1秒かけて移動することがわかります.moveRel():現在位置に応じてマウスポインタを相対的に移動 1
このコードは、マウスポインタを元の位置から相対的に(0,300)個の画素点(すなわち、300画素下へ)移動する.例えば、コードを実行する前に、マウスポインタが(1000,300)になると、コードが実行する後、マウスポインタは(1000,600)に移動し、1秒かかる.position():現在のマウスポインタの位置を取得 1
出力:プログラム実行時のマウスの位置座標.click():マウスのクリックとドラッグを制御する 1
(370120)の位置でマウスクリックをシミュレートし、clickにはもう一つのパラメータ動作buttonがあり、デフォルトは「lest」であり、button=「right」の場合、rightClick()の効果は同じである(マウスの右クリック)doubleClick()ダブルクリック rightClick()右クリック マウスのドラッグ操作に関連する2つの関数があります.dragToとdragRelです.これらの動作はmoveToやmoveRelと同様である、ドラッグ操作は移動中にマウスの左ボタンが押下されることを維持するという違いがある.
この機能は、ダイアログを移動したり、Windowsのタブレットプログラムで鉛筆ツールで自動的に描画したりするなど、さまざまなシーンで使用できます.
1234567891011scroll():ロールアップ関数は、ピクセル数をパラメータとして受け入れ、与えられたピクセル数でロールアップ 1
選択ウィンドウに対して、スクリーン200個の画素点をロールアップする.値が負の場合、下に移動typewrite():文字列を自動的に入力するために使用され、入力する文字列を関数に渡すだけでパラメータとして 12
テキスト領域が画面(100,200)の座標位置にあると仮定すると、このコードはテキスト領域をクリックしてアクティブにし、「hello word!」と入力します.転送キー名:typywrite()関数に分離キー名を入力できます.
1
このコードは、「a」と入力、左方向キーをタップし、左ctrlキーをタップすることに等しい.ホットキー組合せ:hotkey()は、ctrl-c、ctrl-a、ctrl-vなどの組合せホットキーをシミュレートすることができる 1
シミュレーションctrl-v、レプリケーション機能
12345678press():キーボード機能ボタン 123 メッセージポップアップ関数 メッセージポップアップが必要な場合は、OKをクリックしてプログラムを一時停止するか、ユーザーにいくつかの情報を表示すると、メッセージポップアップ関数にはJavaScriptのような機能があります.
123
123
# pyautogui p_w_picpath , p_w_picpath ImportError: No module named 'PIL'
pip install p_w_picpath
pip install pyautogui
公式ドキュメントの紹介:https://pyautogui.readthedocs.io/en/latest/
pyautoguiモジュールを使用してマウスの移動を制御する
import
pyautogui
print
(pyautogui.size())
pyautogui.moveTo(
100
,
100
,duration
=
1
)
このコードはmoveTo()関数を呼び出し、x,y座標をパラメータとして受け入れ、オプションの持続時間パラメータを持つ.この関数は、現在位置から(x,y)座標で指定する位置にマウスポインタを移動させ、移動にかかる時間を持続時間パラメータで指定する.このPythonスクリプトを保存して実行すると、マウスポインタが魔法をかけられたように、現在の位置から座標位置(100,100)に1秒かけて移動することがわかります.
pyautogui.moveRel(
0
,
300
,duration
=
1
)
このコードは、マウスポインタを元の位置から相対的に(0,300)個の画素点(すなわち、300画素下へ)移動する.例えば、コードを実行する前に、マウスポインタが(1000,300)になると、コードが実行する後、マウスポインタは(1000,600)に移動し、1秒かかる.
print
(pyautogui.position())
出力:プログラム実行時のマウスの位置座標.
pyautogui.click(
370
,
120
)
(370120)の位置でマウスクリックをシミュレートし、clickにはもう一つのパラメータ動作buttonがあり、デフォルトは「lest」であり、button=「right」の場合、rightClick()の効果は同じである(マウスの右クリック)
この機能は、ダイアログを移動したり、Windowsのタブレットプログラムで鉛筆ツールで自動的に描画したりするなど、さまざまなシーンで使用できます.
1234567891011
import
pyautogui
import
time
time.sleep(
5
)
# 5
pyautogui.moveTo(
200
,
200
,duration
=
1
)
# (200,200)
pyautogui.dragRel(
100
,
0
,duration
=
1
)
pyautogui.dragRel(
0
,
100
,duration
=
1
)
pyautogui.dragRel(
-
100
,
0
,duration
=
1
)
pyautogui.dragRel(
0
,
-
100
,duration
=
1
)
pyautogui.scroll(
200
)
選択ウィンドウに対して、スクリーン200個の画素点をロールアップする.値が負の場合、下に移動
pyautogui.click(
100
,
200
)
pyautogui.typewrite(
'hello word!'
)
テキスト領域が画面(100,200)の座標位置にあると仮定すると、このコードはテキスト領域をクリックしてアクティブにし、「hello word!」と入力します.
1
pyautogui.typewrite([
'a'
,
'left'
,
'ctrlleft'
])
このコードは、「a」と入力、左方向キーをタップし、左ctrlキーをタップすることに等しい.
pyautogui.hotkey(
'ctrlleft'
,
'v'
)
シミュレーションctrl-v、レプリケーション機能
12345678
pyautogui.hotkey(
'ctrl'
,
'shift'
,
'esc'
)
pyautogui.keyDown(
'ctrl'
)
pyautogui.keyDown(
'shift'
)
pyautogui.keyDown(
'esc'
)
pyautogui.keyUp(
'esc'
)
pyautogui.keyUp(
'shift'
)
pyautogui.keyUp(
'ctrl'
)
pyautogui.press(
'enter'
)
# press the Enter key
pyautogui.press(
'f1'
)
# press the F1 key
pyautogui.press(
'left'
)
# press the left arrow key
123
pyautogui.alert(
' +OK '
)
# OK
pyautogui.confirm(
' +OK+Cancel '
)
# OK Cancel
pyautogui.prompt(
' , OK'
)
#