pyautogui

Python

試行錯誤

・locateCenterOnScreenを使って特定の位置をクリックする場合、ウィンドウサイズが変わると上手くいかなくなってしまう

・そのため、「ウィンドウの横幅」と「ウィンドウの左上座標」から、「クリックしたい位置」を求める計算式をつくった(https://qiita.com/Cartelet/items/9affdd7440c218bc080d)

position

import pyautogui
import sys

try :
  while True :
    input('取得したい座標にマウスカーソルを合わせてからEnterを押してください')
    print(pyautogui.position())

except KeyboardInterrupt :
  print('終了')
  sys.exit()

locateOnScreen

location_closebutton = pyautogui.locateOnScreen("close.png")
location_closebutton.left # left,top,width,height

center_closebutton = pyautogui.center(location_closebutton)
center_closebutton.x #x,y

xPos, yPos = center_closebutton
pyautogui.click(xPos, yPos)

locateCenterOnScreen

xPos, yPos = pyautogui.locateCenterOnScreen("close.png")
pyautogui.click(xPos, yPos)

locateAllOnScreen

for pos in pyautogui.locateAllOnScreen("close.png") :
  print(pos)

click

# 現在のカーソル位置でクリック
pyautogui.click()

# 座標20,100でクリック
pyautogui.click(20, 100,)

# 現在のカーソル位置で0.5秒刻みにクリックを3回
pyautogui.click(clicks=3, interval=0.5)

PAUSE

# 処理を実行するたびに1秒待機する
pyautogui.PAUSE = 1.0

write / press

# 0.5秒の間隔で入力しましたという文字列を入力する
pyautogui.write('入力しました', interval=0.5)

# Enterキー等の特殊キーを入力
pyautogui.press('enter')

# @や^,:のような特定の文字はキーボードのレイアウトにより違う入力になってしまう場合があるその場合は
(https://tech-blog.rakus.co.jp/entry/20220613/python)を参照すること

keyDown / keyUp / hotkey

# ctrlとaの同時押し
pyautogui.keyDown('ctrl')
pyautogui.keyDown('a')
pyautogui.keyUp('a')
pyautogui.keyUp('ctrl')

# ctrlとaの同時押し
pyautogui.hotkey('ctrl', 'a')
BACK