簡體   English   中英

如何檢查最近是否使用python打開了應用程序?

[英]How to check if a application has been recently opened using python?

我想知道用戶最近何時打開了一個應用程序,例如,'notepad.exe' 如果打開,那么腳本應該能夠檢測到它最近被打開,而無需一次又一次地遍歷所有進程。

def checkIfApplicationOpened():
    for proc in psutil.process_iter():
        try:
            pinfo = proc.as_dict(attrs=['name'])
            if(pinfo['name'] == 'notepad.exe'):
                return True
        except (psutil.NoSuchProcess, psutil.AccessDenied, psutil.ZombieProcess):
            return False
    return False    

while True:
    print(checkIfApplicationOpened())

目前,這是我的方法,但效率很低。 有人可以提供更好的方法嗎? 提前致謝。

如何使用 pywinauto 庫。

像這樣

import pywinauto

pywinauto.timings.wait_until_passes(20, 0.5, lambda: pywinauto.findwindows.find_windows(best_match=u'notepad.exe')[0])

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM