Hi,
heute einmal etwas zum Thema Automatisierung.
Es gibt ja schon einige Tools zum Automatisieren, aber nicht viele mit Bild-Erkennung.
Hier kommt die Software Sikuli bzw. SikuliX ins Spiel.
Mit dieser könnt Ihr über Screenshots eure Software oder Prozesse automatisieren. Und das Beste: Es funktioniert Dank Java auf jedem Betriebssystem.
Ich habe dies z.B. mit dem Browser-Spiel Goodgame Empire zum Abholen der Steuern getestet. Diese werden sobald fertig abgeholt und dann wieder ein neuer durchlauf geordert. Um dies genauer zu zeigen hier das Sikuli-Script
patterns = (Pattern("1405884495038.png").similar(0.80),Pattern("1405884506644.png").similar(0.80),"1405884531009.png",Pattern("1406315875293.png").similar(0.78),Pattern("1406315785603.png").similar(0.80),Pattern("1406316973856.png").similar(0.82),Pattern("1406372148504.png").similar(0.80),Pattern("1406379490536.png").similar(0.82))
closetaxeswindow=Pattern("1406317936903.png").targetOffset(162,-17)
newtaxesscreen=Pattern("1406315290793.png")
gettaxes=Pattern("1405884531009.png")
startnewtaxescollection=Pattern("1406315337449.png").targetOffset(-19,0)
retrievetaxes=Pattern("1406316179768.png")
closenewtakesscreen=Pattern("1406318736692.png").targetOffset(146,-47)
def clickexists(p):
click(exists(p, 0))
while True:
for p in patterns:
m = exists(gettaxes, 0)
if m:
click(m)
wait(2)
clickexists(retrievetaxes)
wait(2)
clickexists(closetaxeswindow)
wait(2)
clickexists(newtaxesscreen)
wait(2)
clickexists(startnewtaxescollection)
wait(2)
clickexists(closenewtakesscreen)
else:
clickexists(p)
und einmal nun das ganze als Bild:
An sich könnt ihr dies mit jeder beliebigen Software machen.
Vielleicht möchtet ihr dies ja als Grundlage nutzen 🙂
Gruß, Matthias
Ein Kommentar
Lukas
Hallo Mattihas,
ich habe sicher nicht übertrieben als ich dich ein Genie genannt habe! Tolle Sache!
Grüße
Lukas