场景:我打开了多个Firefox浏览器。在某个时候,我运行我的脚本以关闭所有已启动30分钟以上的firefox进程。
我在Windows上执行此操作。
是否有可能从流程中获得生命周期?
PROCNAME = "firefox.exe"
# Shuts down all PROCNAME processes
for proc in psutil.process_iter():
if proc.name() == PROCNAME:
proc.kill()
最佳答案
我只是将psutil用作上面建议的Amandan。我使用的是PROCNAME“ Google Chrome”,因为它是我正在运行的浏览器,因此我可以使用以下方法获得创建过程的时间。
我假设您可以从进程创建时间中减去当前时间,以获取浏览器已运行的时间。
import psutil
import datetime
PROCNAME = "Google Chrome"
for proc in psutil.process_iter():
if proc.name() == PROCNAME:
p = psutil.Process(proc.ppid())
print(f"Creation time of {PROCNAME} process: ", datetime.datetime.fromtimestamp(p.create_time()).strftime("%Y-%m-%d %H:%M:%S"))
输出: