Safari-Tabs automatisch scannen/durchblättern?

Ich habe einen Mac Mini auf einem Fernseher eingerichtet, um unser Netzwerk zu überwachen. Ich möchte die Überwachungsseiten einrichten, die wir in einer Reihe von Registerkarten anzeigen möchten, und Safari automatisch durch sie blättern lassen. So ähnlich wie Tankstellen Video-Feeds ändern; eine Art Auto-Switcher.

Ich habe mir Glims angesehen, aber es scheint nicht die Funktionalität zu haben. Gibt es eine Möglichkeit, dies mit Basis-Safari zu tun, oder kennt jemand ein Plugin, das dieses Verhalten in Safari ausführt?

Muss es Safari sein? Es gibt ein Plugin für Chrome , das dies tut.
Mir ist bewusst, dass sowohl Chrome als auch Firefox Erweiterungen haben, die damit umgehen können, aber ich war neugierig, ob Safari die Fähigkeit von Haus aus hat.
Sie können es sicherlich in Applescript tun Die Objekthierarchie ist sehr einfach - Anwendung - Fenster (Fenster) - Registerkarten (Tab)

Antworten (2)

Sie können diesen Block von AppleScript verwenden, um Ihre Registerkarten in einem Fenster zu durchlaufen:

tell application "Safari"
    repeat
        repeat with i from (count of tabs of window 1) to 1 by -1
            set thisTab to tab i of window 1
            set current tab of window 1 to thisTab
            delay 1
        end repeat
    end repeat
end tell

Dadurch werden alle Ihre Registerkarten durchlaufen und alle 1 Sekunde gewechselt. Ändern Sie einfach die Verzögerung, um die Zeit zu ändern, bevor jeder Tab wechselt.

Verwenden Sie den integrierten AppleScript-Editor, um es zu schreiben, zu speichern und auszuführen. Funktioniert wunderbar, danke!
Bestätigt, dass es unter macOS 10.15.7 immer noch einwandfrei funktioniert. Der integrierte App-Name zum Schreiben und Ausführen lautet „Script Editor“.

Ich wollte die Registerkarten in vielen Fenstern gleichzeitig aktualisieren, indem ich zur nächsten Registerkarte und dann zurück zum Anfang radelte.

In meinem Fall werden die Fenster durch das gemeinsame Titelpräfix identifiziert, und meine Verzögerung beträgt 20 Sekunden

tell application "Safari"
repeat
    set theWindows to windows
    set windowCount to count of theWindows
    -- log windowCount as text
    repeat with theWindow in theWindows
        set windowName to name of theWindow
        if windowName starts with "<common_prefix>" then
            set tabCount to count of the tabs of theWindow
            set currentTabIdx to index of current tab of theWindow
            log currentTabIdx
            if currentTabIdx = tabCount then
                set currentTabIdx to 0
            end if
            set current tab of theWindow to tab (currentTabIdx + 1) of theWindow
        end if
        end repeat
        delay 20
    end repeat
end tell