学会这项python技能,就再也不怕孩子偷偷打游戏了
前言
本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。
作者:鸟哥
PS:如果想了解更多关于python的应用,可以私信小编,资料都是免费的
今天小编就带领大家来做一个防止孩子玩游戏的Python小程序。
查询电脑的所有进程
用Python循环检测电脑软件的运行情况,当发现游戏软件时弹出警告窗口,并截图保存。学会这项技能,就再也不怕孩子偷偷打游戏了。下面给大家介绍一下详细过程。
第一步:循环查询电脑所有进程,并与游戏进程匹配
1).本文以steam为例,打开任务管理器(Ctrl+Alt+Delete),在详细信息栏我们可以找到steam的进程名字Steam.exe
2).然后用python的第三方模块psutil获取系统信息,只需一行代码就可以调取电脑的所有进程
再与steam.exe做对比,如果匹配到则进入第二步,否则一直循环查询进程
设计一个弹出对话框
第二步:当匹配上之后,弹出提醒框
这一步实现的方法有很多,本文利用win32api模块弹出窗口,主要是提醒,给孩子一个主动改正错误的机会,哈哈
效果如下:
这个框是关不掉的,如果关掉,会马上重新弹出来,只有把steam关掉,系统查不到该进程的时候,才会消失,但再打开steam又会重新弹出来。
截图保存
第三步:截图保存
教育孩子仅仅提醒是不够的,还要让孩子心服口服,所以这一步要在steam被打开时调用截图功能,并以时间戳命名,每关闭一次上一步弹出的小窗口,就会截1张图保存
当发现游戏进程时,用win32gui调用桌面,并设置好分辨率,创建设备描述表和内存设备描述表,截图至内存设备描述表,最后将截图保存在当前文件夹里。
你以为这就万事大吉了吗?当然不是啦,你以为孩子每次玩游戏之前会先帮你运行程序吗?那是不可能的,来看看下面怎么办吧。
程序打包成exe文件
第四步:将程序文件打包成exe文件
我的想法是把程序先打包成可执行的exe文件,python有现成的模块pyinstaller,在pycharm里可以直接安装,安装完成后打开Win+R,输入cmd打开命令窗口,直接输入
打码的是代码文件地址,记住一定要加-w,不加-w运行程序的时候会弹出命令窗口,那就尴尬了。运行成功后,会提示生成exe文件的位置
设计成自动开机
第五步:将生成的exe文件设置成开机自启动
这步比较简单,WIN+R输入shell:startup
将生成的exe文件复制进去
这样一来,每次开电脑的时候这个程序就会偷偷运行,只要一打开steam软件就会弹出警告窗口并截图,但是在其他下是不启用此功能的
学会这项python技能,就再也不怕孩子偷偷打游戏了的更多相关文章
- 【转载】教你分分钟学会用python爬虫框架Scrapy爬取心目中的女神
原文:教你分分钟学会用python爬虫框架Scrapy爬取心目中的女神 本博文将带领你从入门到精通爬虫框架Scrapy,最终具备爬取任何网页的数据的能力.本文以校花网为例进行爬取,校花网:http:/ ...
- Python学习笔记4-如何快速的学会一个Python的模块、方法、关键字
想要快速的学会一个Python的模块和方法,两个函数必须要知道,那就是dir()和help() dir():能够快速的以集合的型式列出该模块下的所有内容(类.常量.方法)例: #--encoding: ...
- 小学生都能学会的python(闭包和迭代器)
小学生都能学会的python(闭包和迭代器) 1. 函数名第一类对象 函数名其实就是变量名 1). 可以像变量一样互相赋值. 2). 可以作为函数的参数,进行传递 3). 可以作为返回值返回 4). ...
- 小学生都能学会的python(函数的进阶)
小学生都能学会的python(函数的进阶) 1. 动态传参 形参: 1. 位置参数 2. 默认值参数 3. 动态传参 *args 动态接收位置参数 **kwargs 动态接收关键字参数 def fun ...
- 小学生都能学会的python(函数)
小学生都能学会的python(函数) 神马是函数 函数: 对功能或者动作的封装 函数的定义 def 函数名(形参列表): 函数体(return) ret = 函数名(实参列表) 函数的返回值 retu ...
- 小学生都能学会的python(文件操作)
小学生都能学会的python(文件操作) 1. open("文件路径", mode="模式", encoding="编码") 文件的路径: ...
- 小学生都能学会的python(深浅拷贝)
小学生都能学会的python(深浅拷贝) join() 把列表中的每一项用字符串拼接起来 # lst = ["汪峰", "吴君如", "李嘉欣&quo ...
- 小学生都能学会的python(小数据池)
小学生都能学会的python(小数据池) 1. 小数据池. 目的:缓存我们字符串,整数,布尔值.在使用的时候不需要创建过多的对象 缓存:int, str, bool. int: 缓存范围 -5~256 ...
- 小学生都能学会的python(字典{ })
小学生都能学会的python(字典{ }) 1. 什么是字典 dict. 以{}表示. 每一项用逗号隔开, 内部元素用key:value的形式来保存数据 {"jj":"林 ...
随机推荐
- JSP+Servlet+C3P0+Mysql实现的azhuo商城
项目简介 项目来源于:https://gitee.com/xuyizhuo/shopping 原仓库中缺失jar包及sql文件异常,现将修改过的源码上传到百度网盘上. 链接:https://pan.b ...
- coding++:使用 javascript 在html中获取url参数
函数处理定义如下: < script type = "text/javascript" > function $G() { var Url = top.window.l ...
- SpringCloud服务的注册发现--------Eureka实现高可用
1,Eureka作为注册中心,掌管者服务治理的功能,十分重要,如果注册中心的服务一旦宕机,所有的服务就会挂了,为此,实现注册中心的集群(高可用)就显得十分必要了 2,Eureka 搭建集群 实现原理就 ...
- Redis这些知识你知道吗?
1.什么是redis? Redis 是一个基于内存的高性能key-value数据库. 2.Redis的特点 Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库 ...
- 《java编程思想》 初始化与清理
1.初始化与清理的重要性: 1.许多C程序的错误都源于程序员忘记初始化变量,特别是使用程序库时,如果不知道如何初始化库的构件更容易出错 2.当使用完一个元素时,这个元素就不会有什么影响了,所以很容易就 ...
- [noip模拟]种花<快速幂+结论>
描述: OI太可怕了,我决定回家种田.我在后院里开辟了一块圆形的花圃,准备种花.种花是一种艺术,通过一定技术手法,花材的排列组合会让花变得更加的赏心悦目,这就是花艺.当然你知道,我在种田之前是OIer ...
- Java数据类型与mysql对应表
- python:列表生成式的学习
看个例子: # 定义一个列表 l=[1,2,3,4,5] #()用于创建一个list,结果依次返回列表l的元素的平方,返回list s=[i*i for i in l] # 打印列表s print(s ...
- Java并发编程实战 01并发编程的Bug源头
摘要 编写正确的并发程序对我来说是一件极其困难的事情,由于知识不足,只知道synchronized这个修饰符进行同步. 本文为学习极客时间:Java并发编程实战 01的总结,文章取图也是来自于该文章 ...
- json格式的文件操作2
1.字典转换为字符串(json.dumps) jsongeshi={"name":"yajuan","age":"10" ...