Vinnaren i pepparkakshustävlingen!
2022-09-05, 12:43
  #1
Medlem
Bonnatorps avatar
Har pysslat med selenium ett tag, och att kunna fylla i rutor, klicka och grejer automatiserat är så behändigt.

Så tanken slog mig, borde inte det här gå att göra med i princip vilket program som helst?

Jag föreställer mig att om man kör form av minnesövervakningsprogram som söker efter aktivitet i en viss process, och kombinerar med en overlay som mäter när man klickar och lägger en tidsstämpel.
Minnesövervakningen filtrerar bort all aktivitet som som sker innan klicket, och returnerar en lista på allt nytt som händer efter klicket.
Sedan kanske man kan injektera den datan i minnet genom något program man skrivit.

Låt säga att jag har fått något helt arbiträrt, typ en kalkylator av något slag som jag inte vet formlerna bakom. Och så vill jag helt enkelt bara ansluta till den kalkylatorn genom att kontrollera I/O i den.
Är det här förslaget det vettigaste generella sättet att göra det på, eller finns det något bättre?

Tänkte t.ex. om man ska bygga en bot till ett spel eller något dylikt.
Citera
2022-09-05, 13:21
  #2
Medlem
Enterprises avatar
Citat:
Ursprungligen postat av Bonnatorp
Har pysslat med selenium ett tag, och att kunna fylla i rutor, klicka och grejer automatiserat är så behändigt.

Så tanken slog mig, borde inte det här gå att göra med i princip vilket program som helst?

Jag föreställer mig att om man kör form av minnesövervakningsprogram som söker efter aktivitet i en viss process, och kombinerar med en overlay som mäter när man klickar och lägger en tidsstämpel.
Minnesövervakningen filtrerar bort all aktivitet som som sker innan klicket, och returnerar en lista på allt nytt som händer efter klicket.
Sedan kanske man kan injektera den datan i minnet genom något program man skrivit.

Låt säga att jag har fått något helt arbiträrt, typ en kalkylator av något slag som jag inte vet formlerna bakom. Och så vill jag helt enkelt bara ansluta till den kalkylatorn genom att kontrollera I/O i den.
Är det här förslaget det vettigaste generella sättet att göra det på, eller finns det något bättre?

Tänkte t.ex. om man ska bygga en bot till ett spel eller något dylikt.
Intressant tanke, men behöver du verkligen gå så "djupt" som att "rota" i minnet?
Det finns ju verktyg för Desktop Automation, som jag tolkar att du är inne på.
På Mac tillhandahåller operativsystemet en möjlighet för tredjepartsutvecklare att skapa en form av API som möjliggör för skript (t.ex. Javascript eller det mer "clunky" AppleScript), den underliggande tekniken här kallas AppleEvents. Dessutom finns möjlighet att automatisera på liknande sätt som Selenium med att klicka i en viss ruta o.s.v, med KeyboardMaestro.

På Windows är utbudet lite skralare, men Autohotkey kan användas som en variant på KeyboardMaestro. Det ska även gå att skicka meddelanden på systemnivå, men det har inte jag lärt mig och jag är osäker på hur "universellt" detta fungerar.

På Linux kan ju väldigt mycket automatiseras genom terminalskript, men jag tror att floran är lite för vildvuxen för att det ska finnas en pålitlig GUI-automatisering. Någon annan får gärna rätta mig här.

Kolla t.ex.:
https://forum.keyboardmaestro.com/t/...omation/7658/4
https://www.autohotkey.com/
https://www.keyboardmaestro.com/main/
__________________
Senast redigerad av Enterprise 2022-09-05 kl. 13:27.
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback