Ich höre, dass immer mehr Menschen zu Hause arbeiten, und viele Menschen sind besorgt, dass "arbeiten sie alle richtig zu Hause?"
Ich finde es seltsam, überhaupt ängstlich zu sein, aber ich frage mich auch, ob einige Leute in Schwierigkeiten geraten, wenn ihr Chef ängstlich wird.
Also dachte ich, wenn ich Informationen über die Apps sammeln könnte, die ich in Echtzeit verwendete, als ich einen Computer benutzte, könnte ich diese Angst ein wenig reduzieren, also untersuchte ich die Methode.
Hier fasse ich die Methode zusammen, "den Titel des aktiven Fensters jedes Mal abzurufen und anzuzeigen, wenn das aktive Fenster geändert wird".
Installieren Sie für Mac die erforderliche Bibliothek mit dem folgenden Befehl.
pip install -U PyObjC
Verwenden Sie unter Windows den folgenden Befehl, um die erforderlichen Bibliotheken zu installieren.
pip install -U pywin32
get_active_window_title.py
#!/usr/bin/env python
import sys
#Für Mac
if sys.platform == "darwin":
from AppKit import NSWorkspace
from Quartz import (
CGWindowListCopyWindowInfo,
kCGWindowListOptionOnScreenOnly,
kCGNullWindowID
)
def getActiveWindowTitle():
curr_app = NSWorkspace.sharedWorkspace().frontmostApplication()
curr_pid = NSWorkspace.sharedWorkspace().activeApplication()['NSApplicationProcessIdentifier']
curr_app_name = curr_app.localizedName()
options = kCGWindowListOptionOnScreenOnly
windowList = CGWindowListCopyWindowInfo(options, kCGNullWindowID)
txt = ""
for window in windowList:
pid = window['kCGWindowOwnerPID']
windowNumber = window['kCGWindowNumber']
ownerName = window['kCGWindowOwnerName']
geometry = window['kCGWindowBounds']
windowTitle = window.get('kCGWindowName', u'Unknown')
if curr_pid == pid:
activeWindowTitle = ownerName + " - " + windowTitle
return activeWindowTitle
#Für Windows
elif sys.platform == "win32":
import win32gui
def getActiveWindowTitle():
activeWindowTitle = win32gui.GetWindowText(win32gui.GetForegroundWindow());
return activeWindowTitle
else:
def getActiveWindowTitle():
return ""
def main():
bufWindowTitle = ""
try:
while True:
activeWindowTitle = getActiveWindowTitle()
if bufWindowTitle != activeWindowTitle:
print(activeWindowTitle)
bufWindowTitle = activeWindowTitle
except KeyboardInterrupt:
sys.exit(0)
if __name__ == '__main__':
main()
Führen Sie es nach dem Erstellen mit dem folgenden Befehl aus.
python get_active_window_title.py
Sie sollten den Anwendungsnamen jedes Mal sehen, wenn Sie das aktive Fenster wechseln.
erledigt!
Wenn Sie dies an den angegebenen Server senden, wissen Sie, dass Sie ordnungsgemäß arbeiten, und es ist in Ordnung, "Prove!" Zu sagen! !! ...Fein! ...... Ich denke es ist okay.