python学习笔记--缓解眼睛疲劳的小工具
工作之余想着劳逸结合,然后就点开了‘大家来找茬’的休闲游戏,结果发现这玩意儿并不怎么休闲。
原本双眼在日常的‘BUG与调试’中就很疲劳了,休闲后结果更加疲劳了。
本次功能需求为自动判断两图差异,从而达到缓解眼睛疲劳功能,主要使用了pywin32,PIL,PyQt5,最终达到效果如下:
1.获取窗口句柄并窗口截图
![](/assets/blank.gif)
![](/assets/blank.gif)
1 def flush_game(): 2 handle = win32gui.FindWindow(None, '大家来找茬') 3 win32gui.ShowWindow(handle, win32con.SW_RESTORE) 4 win32gui.SetForegroundWindow(handle) 5 wrect = win32gui.GetWindowRect(handle) 6 img = ImageGrab.grab(wrect)
View Code
2.分别截取两图,把其中一张取反色,然后融合两张图
![](/assets/blank.gif)
![](/assets/blank.gif)
1 def contrast_img(img): 2 i1 = img.crop((93, 312, 474, 598)) 3 i2 = img.crop((550, 312, 550 + 474 - 93, 598)) 4 i3 = ImageChops.invert(i2) 5 Image.blend(i1, i3, 0.5).save('1.jpg')
View Code
3.创建窗口来展示融合后的图,将1,2的功能绑定到‘刷新’按钮。
![](/assets/blank.gif)
![](/assets/blank.gif)
1 class App(QWidget): 2 def __init__(self): 3 super().__init__() 4 self.left = 541+900 5 self.top = 449 6 self.width = 550 + 474 - 93-550 7 self.height = 598-312 8 self.initUI() 9 10 def initUI(self): 11 self.setGeometry(self.left, self.top, self.width, self.height) 12 self.setWindowFlags(Qt.WindowMinimizeButtonHint | 13 Qt.WindowCloseButtonHint | 14 Qt.WindowStaysOnTopHint) 15 self.setWindowOpacity(1 16 ) 17 l1 = QLabel(self) 18 png = QPixmap('1.jpg') 19 l1.setPixmap(png) 20 button = QPushButton("刷新", self) 21 # button.move(100, 70) 22 button.clicked.connect(self.on_click) 23 self.show() 24 25 @pyqtSlot() 26 def on_click(self): 27 flush_game() 28 self.initUI()
View Code
博主主要从事JAVA开发,平时‘义务’加班很多,因此学习python的时间很少,本次主要为了学习pywin32,PIL,PyQt5,游戏本是大家百忙中的一点娱乐,为了避免影响大家的心情,所以奉劝大家不要开挂!不要开挂!不要开挂!
转载于:https://www.cnblogs.com/lcp33/p/9115642.html
python学习笔记--缓解眼睛疲劳的小工具相关推荐
- Python学习笔记(一)——浏览器自动化测试工具Selenium
看了网友用Python通过影评来分析电影是好片还是烂片,自己也有了个想法想去分析下百度贴吧的帖子是精品帖子还是水帖子.目前正在熟悉工具的使用. 会用到的库:Selenium, pandas(数据模型) ...
- 【Python学习笔记】猜颜色小游戏
[Python学习笔记]猜颜色小游戏 前言 一.算法原理 1. 生成器部分 2. 检测器部分 二.代码 过程BUG汇总笔记 总结 前言 最近馋世界游戏大全51,心血来潮用Python写了个猜颜色,顺便 ...
- Python学习笔记编程小哥令狐~持续更新、、、
Python学习笔记~编程小哥令狐 文章目录 Python学习笔记~编程小哥令狐 一.Python运行发生情况 二.变量 2.1变量引入前说明 2.2变量的命名和使用 2.3字符串 2.3.1使用方法 ...
- OpenCV之Python学习笔记(1)(2): 图像的载入、显示和保存 图像元素的访问、通道分离与合并
OpenCV之Python学习笔记 一直都在用Python+OpenCV做一些算法的原型.本来想留下发布一些文章的,可是整理一下就有点无奈了,都是写零散不成系统的小片段.现在看到一本国外的新书< ...
- OpenCV之Python学习笔记
RSS订阅 登陆 注册 原文链接地址:http://www.itozi.net/19477.html OpenCV之Python学习笔记 ITOZI 发布于 2015-08-06 分类:OpenSta ...
- GUI的演化和python编程——Python学习笔记之二十二
GUI的演化和python编程--Python学习笔记之二十二 写完了有关长寿的两篇博文,本该去完成哥德尔那个命题六的.对计算机图形界面的好奇,让我把注意力暂时离开那个高度抽象难读的哥德尔,给转到计算 ...
- Deep learning with Python 学习笔记(6)
本节介绍循环神经网络及其优化 循环神经网络(RNN,recurrent neural network)处理序列的方式是,遍历所有序列元素,并保存一个状态(state),其中包含与已查看内容相关的信息. ...
- Python学习笔记一简介及安装配置
Python学习笔记一 参考教程:廖雪峰官网https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e54 ...
- python 学习笔记 12 -- 写一个脚本获取城市天气信息
近期在玩树莓派,前面写过一篇在树莓派上使用1602液晶显示屏,那么可以显示后最重要的就是显示什么的问题了. 最easy想到的就是显示时间啊,CPU利用率啊.IP地址之类的.那么我认为呢,假设可以显示当 ...
- 廖Python学习笔记一
1. 廖Python学习笔记 大的分类 如函数 用二级标题,下面的用三级 如输入输出 1.1.1. 输入输出 1.1.1.1. 输出 用 print() 在括号里加上字符串,就可以向屏幕上输出指定的文 ...
最新文章
- 小机上监控AIX和数据库管理系统的运行情况直到性能优化(SQL语句优化和排除硬件问题)...
- 澎思科技马原:AI为基,IoT为翼,加速人工智能普惠丨MEET2021
- parkAndCheckInterrupt
- springfox源码_Spring boot整合Springfox在线生成restful的api doc
- 大学c语言下上机考试题,计算机考试二级C语言上机试题下[5]
- android 盒子刷机,DIY封装Android盒子刷机镜像
- 海外RPA企业盘点:谁是领导者,谁是挑战者?
- 运放做跟随器有什么要求
- PMP学习笔记 第5章 项目范围管理
- linux重装系统保留文件,linux重装系统,如何保存硬盘中的内容
- Revit二次开发—内建类别BuiltInCategory枚举(中英文对照)
- 外网远程访问管家婆ERP进销存
- 阿里VIP会员看腾讯视频?这不是一个意外的选择
- golang基础教程
- 《PyQt5 开发技巧与实践》学习笔记
- 自己动手写CPU(11)——加载存储指令说明
- Bugku,Web:各种绕过哟
- 物理复习2振动、波动
- 单链表的创建--从零开始
- Flume+Kafka+Spark Streaming实现大数据实时流式数据采集
热门文章
- 网络(韩志刚版笔记)
- 【JAVA-UT】13、什么是依赖?
- Timer already cancelled 或者 Task already scheduled or cancelled
- 华退学博士王垠:离开是为了获得力量后再回来
- 强化学习——多智能体强化学习
- nodejs+java+python网上体育用品销售系统
- cuda the launch timed out and was terminated windows11解决方案 关闭TDR
- SQL课设之报刊订阅管理
- 计算机老师写对联给新人,写给教师结婚幽默对联【值得收藏】
- [ctf.show.reverse] 数学不及格