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 相关文章推荐
wxpython 学习笔记 第一天
Mar 16 Python
Python和Ruby中each循环引用变量问题(一个隐秘BUG?)
Jun 04 Python
Python实现列表转换成字典数据结构的方法
Mar 11 Python
浅谈Python中带_的变量或函数命名
Dec 04 Python
OpenCV图像颜色反转算法详解
May 13 Python
python文件写入write()的操作
May 14 Python
python 通过可变参数计算n个数的乘积方法
Jun 13 Python
微信小程序python用户认证的实现
Jul 29 Python
Python 实现一个手机号码获取妹子名字的功能
Sep 25 Python
python NumPy ndarray二维数组 按照行列求平均实例
Nov 26 Python
Python 读取位于包中的数据文件
Aug 07 Python
Python基础之进程详解
May 21 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
PHP中基本符号及使用方法
2010/03/23 PHP
PHP实现的链式队列结构示例
2017/09/15 PHP
javascript innerHTML、outerHTML、innerText、outerText的区别
2008/11/24 Javascript
将json对象转换为字符串的方法
2014/02/20 Javascript
原生js编写设为首页兼容ie、火狐和谷歌
2014/06/05 Javascript
多种方法实现360浏览器下禁止自动填写用户名密码
2014/06/16 Javascript
14款NodeJS Web框架推荐
2014/07/11 NodeJs
jQuery淡入淡出元素让其效果更为生动
2014/09/01 Javascript
Linux下编译安装php libevent扩展实例
2015/02/14 Javascript
JavaScript编程中的Promise使用大全
2015/07/28 Javascript
异步加载JS、CSS代码(推荐)
2016/06/15 Javascript
jQuery Ajax Post 回调函数不执行问题的解决方法
2016/08/15 Javascript
利用Node.js制作爬取大众点评的爬虫
2016/09/22 Javascript
微信小程序  action-sheet详解及实例代码
2016/11/09 Javascript
Bootstrap select下拉联动(jQuery cxselect)
2017/01/04 Javascript
jQuery简单获取DIV和A标签元素位置的方法
2017/02/07 Javascript
小程序兼容安卓和IOS数据处理问题及坑
2018/09/18 Javascript
深入分析element ScrollBar滚动组件源码
2019/01/22 Javascript
JS实现从对象获取对象中单个键值的方法示例
2019/06/05 Javascript
ES6中let、const的区别及变量的解构赋值操作方法实例分析
2019/10/15 Javascript
Python标准库之随机数 (math包、random包)介绍
2014/11/25 Python
python requests 使用快速入门
2017/08/31 Python
Python函数基础实例详解【函数嵌套,命名空间,函数对象,闭包函数等】
2019/03/30 Python
如何基于python操作excel并获取内容
2019/12/24 Python
python中slice参数过长的处理方法及实例
2020/12/15 Python
用React加CSS3实现微信拆红包动画效果
2017/03/13 HTML / CSS
澳大利亚一站式数码相机商店:CameraPro
2020/03/09 全球购物
Zalando Lounge瑞士:时尚与生活方式购物俱乐部
2020/03/12 全球购物
什么是Linux虚拟文件系统VFS
2012/01/31 面试题
营业员演讲稿
2013/12/30 职场文书
司机辞职报告范文
2014/01/20 职场文书
优秀共产党员先进事迹
2014/01/27 职场文书
2014年师德师风自我剖析材料
2014/09/27 职场文书
2014年安置帮教工作总结
2014/12/11 职场文书
深入理解go缓存库freecache的使用
2022/02/15 Golang
什么是css原子化,有什么用?
2022/04/24 HTML / CSS