【问题标题】:How do time tracking softwares find screen time of applications?时间跟踪软件如何找到应用程序的屏幕时间?
【发布时间】:2019-07-24 10:49:40
【问题描述】:

我想用python for windows写一个时间跟踪软件。如何找到单个应用程序的总屏幕时间?是否有任何 Windows 服务可以跟踪特定应用程序在当前会话期间花费的总屏幕时间?或者有没有其他方法可以使用?

【问题讨论】:

  • 找一些开源的,自己看看。他们可以从焦点窗口的标题和其他属性推断使用情况。
  • 时间管理如何?时钟时间? CPU 时间?

标签: python windows operating-system subprocess time-tracking


【解决方案1】:

也许 pywin32 就是你要找的东西:

from win32gui import GetWindowText, GetForegroundWindow
print(GetWindowText(GetForegroundWindow()))

你必须在后台反复运行,并自己计算总屏幕时间。

【讨论】:

  • 我不知道这个模块。它看起来是我的问题的一个很好的解决方案。谢谢!
  • 只是一个后续问题,您将如何获得应用程序名称,例如“这台电脑”,其中窗口的标题通常是我们所在的当前目录,而不是应用程序名称。我只想得到“这台电脑”作为输出,而不是“本地磁盘 (D:)”或其他东西
  • 通过一些变通方法,您可以获得前台窗口的进程名称,因此您还需要psutil 来获取基于PID 的进程名称,您可以使用GetWindowThreadIdProcessId 获得PID。 psutil.Process(win32process.GetWindowThreadProcessId(GetForegroundWindow())[1]).name
猜你喜欢
  • 2021-12-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-25
相关资源
最近更新 更多