[Python] 305 pyautogui 画面内の画像を一定時間おきにクリック 改良版

while文でより完成度を高めました。目的のアイコンが出現するまでwhile文内でループします。1分毎にチェックするので、クリック後の待機時間も設定不要です。

ネット通販の在庫チェックはselenium等を使ったクローリングよりもpyautoguiの画像認識の方が断然楽ですが、見つけ次第注文するとなると微妙です。

私自身は在庫チェックにはクローリングを利用し、注文は人力です。自動発注はやろうと思えばできるはずですが、そこは一線を引いています。

import pyautogui as gui
import time

time.sleep(2)

c = 0
while gui.locateCenterOnScreen("user_icon.png"):
    i = 0
    while not gui.locateCenterOnScreen("point_icon.png",confidence=.8):
        print(f"アイコンなし {i}分経過 {c}回クリック済み")
        time.sleep(60)
        i = i + 1
    else:
        ret = gui.locateCenterOnScreen("point_icon.png",confidence=.8)
        gui.moveTo(ret)
        gui.click()

        print(f"クリック完了 {c+1}回目")
        c = c + 1