python定时截屏实现


Posted in Python onNovember 02, 2020

写在前面

因为暂时还没有想好做什么具体的某个项目来提升对python的理解,所以就自己想着做一下小玩意来加强一下自己对一些库和方法的理解

分析

1、截屏

截屏的话有pillow这个模块,并且就两条语句,后面会看到

2、定时任务

定时的话涉及到时间,所以会引入time这个模块

3、保存

保存的话因为是会有多个图片,所以需要一个目录来接,这里我就放在了根目录下的png目录下,并且对目录是否存在做了处理

代码

# python3 author jin xiang
import time
from PIL import ImageGrab
import os

#这里是为了如果找不到png这个目录的情况自己建一个png目录
absPath = os.path.abspath('.')
path = [x for x in os.listdir('.') if os.path.isdir(x)]
# print(path)
if 'png' in path:
  #print('yes')
  pass
else:
 #print('no')
  #创建目录
  pngPath = os.path.join(absPath,'png')
  os.mkdir(pngPath)

#截屏
def Screenshot():
 nowtime = time.strftime('%Y_%m_%d_%H_%M_%S',time.localtime(time.time()))
 print(nowtime)
 # 截屏语句很简单的
  im = ImageGrab.grab()
  # 保存(图个有png路径或者别的路径需要在这个路径下有这个目录,不然报错,所以我前面是做了规避,没路径我就自己建一个)
  im.save(r'png\%s.png' %(nowtime))
while True:  
 print("截图!")
  Screenshot()

  print("暂停")
  print("\n")
  time.sleep(10) #定时10s看一下

效果

python定时截屏实现

python定时截屏实现

图片成功保存了。

补充知识:python opencv 定时器 摄像头自动截图小程序

我就废话不多说了,大家还是直接看代码吧~

import threading
import cv2
global timer
import sys

def shot_img():
  global num
  success, frame = cameraCapture.read()
  path = "H://pythonr"
  cv2.imwrite( path +'a[num]' + '.jpg', frame)
  print(num)
  num += 1
  if num==10:
    cameraCapture.release()
    cv2.destroyAllWindows()
    sys.exit()
  timer = threading.Timer(1, shot_img)
  timer.start()

if __name__ == '__main__':
  num=0
  cameraCapture = cv2.VideoCapture(0)
  timer = threading.Timer(1,shot_img)
  timer.start()

以上这篇python定时截屏实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python显示进度条的方法
Sep 20 Python
Python网络编程之TCP套接字简单用法示例
Apr 09 Python
Python将文本去空格并保存到txt文件中的实例
Jul 24 Python
Python退火算法在高次方程的应用
Jul 26 Python
python 读取鼠标点击坐标的实例
Dec 29 Python
python 堆和优先队列的使用详解
Mar 05 Python
对PyQt5基本窗口控件 QMainWindow的使用详解
Jun 19 Python
如何更优雅地写python代码
Jul 02 Python
Python基于OpenCV实现人脸检测并保存
Jul 23 Python
Python可变参数会自动填充前面的默认同名参数实例
Nov 18 Python
python的slice notation的特殊用法详解
Dec 27 Python
python如何利用cv2.rectangle()绘制矩形框
Dec 24 Python
PyQT5速成教程之Qt Designer介绍与入门
Nov 02 #Python
如何基于matlab相机标定导出xml文件
Nov 02 #Python
PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解
Nov 02 #Python
Python如何急速下载第三方库详解
Nov 02 #Python
关于python3.9安装wordcloud出错的问题及解决办法
Nov 02 #Python
一篇文章带你搞定Ubuntu中打开Pycharm总是卡顿崩溃
Nov 02 #Python
jupyter notebook 写代码自动补全的实现
Nov 02 #Python
You might like
zend framework多模块多布局配置
2011/02/26 PHP
使用php get_headers 判断URL是否有效的解决办法
2013/04/27 PHP
PHP获取当前页面URL函数实例
2014/10/22 PHP
PHP中遇到的时区问题解决方法
2015/07/23 PHP
php json相关函数用法示例
2017/03/28 PHP
Yii2实现ActiveForm ajax提交
2017/05/26 PHP
为数据添加append,remove功能
2006/10/03 Javascript
javascript:history.go()和History.back()的区别及应用
2012/11/25 Javascript
JS加jquery简单实现标签元素的显示或隐藏
2013/09/23 Javascript
JavaScript中用字面量创建对象介绍
2014/12/31 Javascript
JQuery实现展开关闭层的方法
2015/02/17 Javascript
js实现点击链接后窗口缩小并居中的方法
2015/03/02 Javascript
极易被忽视的javascript面试题七问七答
2016/02/15 Javascript
关于JS中match() 和 exec() 返回值和属性的测试
2016/03/21 Javascript
JavaScript中this的四个绑定规则总结
2016/09/26 Javascript
Javascript基础回顾之(二) js作用域
2017/01/31 Javascript
如何使用Bootstrap创建表单
2017/03/29 Javascript
JavaScript 自定义事件之我见
2017/09/25 Javascript
微信小程序使用component自定义toast弹窗效果
2018/11/27 Javascript
小程序分享模块超级详解(推荐)
2019/04/10 Javascript
支付宝小程序实现省市区三级联动
2020/06/21 Javascript
详解node.js 事件循环
2020/07/22 Javascript
Python实现比较两个文件夹中代码变化的方法
2015/07/10 Python
python实现植物大战僵尸游戏实例代码
2019/06/10 Python
详解pandas中MultiIndex和对象实际索引不一致问题
2019/07/23 Python
Python CSV文件模块的使用案例分析
2019/12/21 Python
Python统计文本词汇出现次数的实例代码
2020/02/27 Python
Python多线程操作之互斥锁、递归锁、信号量、事件实例详解
2020/03/24 Python
浅谈多卡服务器下隐藏部分 GPU 和 TensorFlow 的显存使用设置
2020/06/30 Python
详解如何在css中引入自定义字体(font-face)
2018/05/17 HTML / CSS
html5+css3之制作header实例与更新
2020/12/21 HTML / CSS
全球领先的在线cosplay服装商店:RoleCosplay
2020/01/18 全球购物
有模特经验的简历自我评价
2013/09/19 职场文书
保安部任务及岗位职责
2014/02/25 职场文书
《钱学森》听课反思
2014/03/01 职场文书
MySQL 查询速度慢的原因
2021/05/25 MySQL