LoginSignup
0
0

More than 5 years have passed since last update.

pyautoguiでクリックマクロが作りたい(展望)

Posted at

ちょっと待って!
関数多すぎるやん!

jidou.py
#!/usr/bin/python
# -*- coding: utf-8 -*-

import pyautogui as pg
import time as ti
import random as rm

grapath="bpic/"


def clicker(x,y):
    if x != None and y != None:
        pg.click(x,y,button="left",duration=0.5)
    else:
        print("nooo")

def clicktimerand():
    time=rm.randint(1,5)
    return time

def syutuxy():
    x,y=pg.locateCenterOnScreen(grapath+"syutu.png")
    return x,y

def syuturand(x,y):
    rx=rm.randint(-39,21)
    ry=rm.randint(-39,26)
    x=x+rx
    y=y+ry
    return x,y

def hokyuxy():
    x,y=pg.locateCenterOnScreen(grapath+"hokyu.png")
    return x,y

def hokyurand(x,y):
    rx=rm.randint(-27,27)
    ry=rm.randint(-30,30)
    x=x+rx
    y=y+ry
    return x,y

def honxy():
    x,y=pg.locateCenterOnScreen(grapath+"hon.png")
    return x,y

def honrand(x,y):
    rx=rm.randint(-7,7)
    ry=rm.randint(-8,8)
    x=x+rx
    y=y+ry
    return x,y

def endxy():
    x,y=pg.locateCenterOnScreen(grapath+"end.png")
    return x,y

def endrand(x,y):
    rx=rm.randint(-7,7)
    ry=rm.randint(-8,8)
    x=x+rx
    y=y+ry
    return x,y

###StartUp#################################
ti.sleep(1)
pg.FAILSAFE=True #move to left over

###Schedule#################################
syutub=syutuxy()
hokyux,hokyuy=hokyuxy()

hokyurx,hokyury=hokyurand(hokyux,hokyuy)
clicker(hokyurx,hokyury)

ti.sleep(2) #loading = Black out

honx,hony=honxy()
honrx,honry=honrand(honx,hony)
ti.sleep(clicktimerand())
clicker(honrx,honry)

print("Di endou")

ほげー:alien:
とりあえず各ボタンの中心座標、とそれらのランダム座標を生成する関数を作ったらこんなに…
ていうか勢いで作ってるから変数の名前もややこしくなってきてるし…


・今回の引っかかりポイント
画像探しが早すぎてloding中に探してた →sleepでおやすみ
帰ってきた時は若干フィルターかかっててsyutuが認識できないっぽい


・展望
変数は減らす →関数の引数を減らす
クリックの長さもランダムに
しっかりフローチャート書いてスケジューリングしないと滅茶苦茶になってしまう
全部の画像探してないで、初期画面で一箇所取って、そこから相対座標で…ゴニョゴニョ

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0