Auto Click in 2 Chrome Fenstern

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Boomster
User
Beiträge: 4
Registriert: Dienstag 18. März 2025, 17:47

Hi, ich habe folgendes Problem.

Ich möchte in einem Chrome Fenster, dass eine Taste automatisch geklickt wird, während ich in einem anderen Fenster arbeite.
Bei all meinen Versuchen, wird das klicken immer unterbrochen, wenn ich in das andere Fenster wechsele.

Ideen woran das liegen könnte?

LG
Benutzeravatar
noisefloor
User
Beiträge: 4175
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Grundsätzlich würde ich mal stark vermuten, dass egal bei welcher Desktopoberfläche immer nur das aktive Fenster (=das mit Fokus) auf Maus und Tastatur reagiert und die anderen Fenster nicht. Was zumindest ein IMHO logisches und erwartbares Verhalten wäre. Sonst hättest du ja auch keine Kontrolle darüber, was bei Fenstern ohne Fokus im Hintergrund gerade passiert.

Gruß, noisefloor
Boomster
User
Beiträge: 4
Registriert: Dienstag 18. März 2025, 17:47

Das heißt, dass es keine Möglichkeit gibt, in einem nicht aktiven Tab / Fenster eine Aktion durchzuführen, wenn ich mich in einem befinde.
Benutzeravatar
noisefloor
User
Beiträge: 4175
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Keine - keine Ahnung. Über Maus und Tastatur IMHO: nein.

Was vielleicht / wahrscheinlich geht ist, die Interaktion mit Webseite $FOO über eine headless Browser und einem Tool wie Selenium zu automatisieren. Da müsstest du aber mal ausführlicher Erklären, was du genau vor hast. Mit einem nicht-aktiven Tab bzw. der darin geladenen Webseite interagieren hört sich erstmal nicht nach einer "normalen" Anwendung an.

Gruß, noisefloor
Boomster
User
Beiträge: 4
Registriert: Dienstag 18. März 2025, 17:47

Ich möchte ein Browsergame für mich optimieren, dass ich über Chrome spiele (Flyff Universe).

In Tab1 spiele ich meinen Hauptcharakter über Maus und Tastatur.
In Tab2 spiele ich meinen Heiler.

Wenn ich in Tab1 Gegner angreife, meinetwegen mit der Taste "3", dann würde ich gerne, dass
in Tab2 mein Heiler seine Heilfähigkeit benutzt. Die kann auch auf Taste "3" liegen oder woanders.

In all meinen versuchen, die ich bis jetzt gestartet habe, war es so wie Du es beschrieben hast. Es funktioniert nur, wenn Tab2 aktiv ist. Somit
kann ich mich aber in Tab1 nicht mehr bewegen, bzw. Aktionen ausführen.

Und dafür suche ich eine Lösung, wenn es die überhaupt gibt und die darf auch nicht zu komplex sein.

LG
Benutzeravatar
__blackjack__
User
Beiträge: 14005
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@Boomster: Die einfachste Lösung wäre nicht bescheissen zu wollen. 😛
“The best book on programming for the layman is »Alice in Wonderland«; but that's because it's the best book on anything for the layman.” — Alan J. Perlis
Boomster
User
Beiträge: 4
Registriert: Dienstag 18. März 2025, 17:47

Ich kann mir auch nen Laptop mit ner eingeklemmten Taste neben den PC stellen, wie es normal in diesem Spiel ist oder ich versuche das Problem anders, schöner zu lösen und lerne dabei noch etwas. Und das ist mein Anliegen hier.

Code: Alles auswählen

import pyautogui
import keyboard
import time

def switch_window():
    """Wechselt zwischen den zwei letzten aktiven Fenstern."""
    pyautogui.keyDown('alt')  # Alt-Taste gedrückt halten
    pyautogui.press('tab')    # Tab drücken, um das andere Fenster zu aktivieren
    pyautogui.keyUp('alt')    # Alt-Taste loslassen
    time.sleep(0.2)           # Kurze Verzögerung für den Wechsel

def execute_task():
    """Führt den Task aus, wenn '3' gedrückt wird."""
    time.sleep(0.1)          # Kurze Verzögerung, damit die manuelle Eingabe abgeschlossen ist

    # Zum zweiten Chrome-Fenster wechseln
    switch_window()

    # Taste 3 in Fenster 2 ausführen
    keyboard.press_and_release('3')

    # Zurück zum ersten Chrome-Fenster wechseln
    switch_window()

# Setzt die "3"-Taste als Hotkey, der das Skript bei jedem Drücken ausführt
keyboard.add_hotkey('3', execute_task)

print("Skript läuft... Drücke ESC zum Beenden.")
keyboard.wait('esc')  # Warte auf ESC, um das Skript zu beenden.
So setze ich es zur Zeit um. Aber dabei wird halt immer aktiv das Fenster gewechselt. =(
Benutzeravatar
noisefloor
User
Beiträge: 4175
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Ich kann mir auch nen Laptop mit ner eingeklemmten Taste neben den PC stellen, wie es normal in diesem Spiel ist oder ich versuche das Problem anders, schöner zu lösen und lerne dabei noch etwas.
Na ja, cheaten bleibt hat cheaten. Was daran "schön" ist, ist eher Ansichtssache. Mit einem 2. Rechner kurbelst du immerhin die Wirtschaft an (Laptophersteller, Händler). Was cheaten nicht besser macht, aber immerhin ist der Kauf des Geräts "positiv".
So setze ich es zur Zeit um. Aber dabei wird halt immer aktiv das Fenster gewechselt. =(
Was IMHO unumgänglich ist, siehe oben.

Gruß, noisefloor
Antworten