python检测windows是否处于活动(空闲)状态

主要是检查电脑是否几分钟内鼠标键盘无人操作,以便根据情况执行一些代码。方法是通过windows api的GetLastInputInfo()获取从电脑启动到上次鼠标键盘工作时经历了多少毫秒,如果鼠标键盘无操作,这个值就不会变了,一旦变了就说明鼠标键盘当前处于活动状态。

import win32api, time
last_input = int(win32api.GetLastInputInfo() / 1000)
last_change = int(time.time())

while True:
	now_input = int(win32api.GetLastInputInfo() / 1000)
	if now_input != last_input:
	    last_input = now_input
	    last_change = int(time.time())
    if int(time.time()) - last_change > 300:
    	print('鼠标键盘已超过5分钟无任何操作,可在此处添加需要执行的代码')
	time.sleep(2)

其他思路:
1、获取鼠标的坐标,如果短期有变动就说明电脑处于活动状态
2、获取前台窗口的句柄或窗口标题或进程名称,如果短期有变动就说明电脑处于活动状态
3、实时监听鼠标和键盘的输入情况,一旦有新的输入信息就说明鼠标键盘处于活动状态。不过这个方法慎用,因为在操作电脑时鼠标和键盘一直会有新的输入,程序也是一直在实时做出响应,很可能会导致电脑卡顿。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值