Python实现截屏的函数


Posted in Python onJuly 25, 2015

本文实例讲述了Python实现截屏的函数。分享给大家供大家参考。具体如下:

1.可指定保存目录.
2.截屏图片名字以时间为文件名
3.截屏图片存为JPG格式图片,比BMP小多的,一个1024*800的截屏BMP有3M多,一个1024*800的JPG只有300K左右.

就可做一个简单的监控了,每10秒截一屏,放到一个指定隐藏的文件夹里,基本掌握机子的使用了,适合监控自家小孩的使用情况

# -*- coding: cp936 -*- 
import time,Image 
import os, win32gui, win32ui, win32con, win32api 
def window_capture(dpath): 
  ''''' 
截屏函数,调用方法window_capture('d:\\') ,参数为指定保存的目录 
返回图片文件名,文件名格式:日期.jpg 如:2009328224853.jpg 
  ''' 
  hwnd = 0 
  hwndDC = win32gui.GetWindowDC(hwnd)  
  mfcDC=win32ui.CreateDCFromHandle(hwndDC)  
  saveDC=mfcDC.CreateCompatibleDC()  
  saveBitMap = win32ui.CreateBitmap()  
  MoniterDev=win32api.EnumDisplayMonitors(None,None) 
  w = MoniterDev[0][2][2] 
  h = MoniterDev[0][2][3] 
  #print w,h #图片大小 
  saveBitMap.CreateCompatibleBitmap(mfcDC, w, h)  
  saveDC.SelectObject(saveBitMap)  
  saveDC.BitBlt((0,0),(w, h) , mfcDC, (0,0), win32con.SRCCOPY) 
  cc=time.gmtime() 
  bmpname=str(cc[0])+str(cc[1])+str(cc[2])+str(cc[3]+8)+str(cc[4])+str(cc[5])+'.bmp' 
  saveBitMap.SaveBitmapFile(saveDC, bmpname) 
  Image.open(bmpname).save(bmpname[:-4]+".jpg") 
  os.remove(bmpname) 
  jpgname=bmpname[:-4]+'.jpg' 
  djpgname=dpath+jpgname 
  copy_command = "move %s %s" % (jpgname, djpgname) 
  os.popen(copy_command) 
  return bmpname[:-4]+'.jpg' 
#调用截屏函数   
window_capture('d:\\')

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
深入分析在Python模块顶层运行的代码引起的一个Bug
Jul 04 Python
python操作mysql中文显示乱码的解决方法
Oct 11 Python
python字符串连接方法分析
Apr 12 Python
Python常用时间操作总结【取得当前时间、时间函数、应用等】
May 11 Python
win7下python3.6安装配置方法图文教程
Jul 31 Python
python调用java的jar包方法
Dec 15 Python
python禁用键鼠与提权代码实例
Aug 16 Python
用Pelican搭建一个极简静态博客系统过程解析
Aug 22 Python
python lambda表达式在sort函数中的使用详解
Aug 28 Python
基于Python和C++实现删除链表的节点
Jul 06 Python
python使用多线程查询数据库的实现示例
Aug 17 Python
Python基础之元组与文件知识总结
May 19 Python
Python基于PycURL自动处理cookie的方法
Jul 25 #Python
Python基于PycURL实现POST的方法
Jul 25 #Python
Python实现对excel文件列表值进行统计的方法
Jul 25 #Python
Python自动扫雷实现方法
Jul 25 #Python
Python导出DBF文件到Excel的方法
Jul 25 #Python
Python实现的RSS阅读器实例
Jul 25 #Python
Python获取央视节目单的实现代码
Jul 25 #Python
You might like
PHP+FFMPEG实现将视频自动转码成H264标准Mp4文件
2014/09/24 PHP
php实现的http请求封装示例
2016/11/08 PHP
Yii2实现log输出到file及database的方法
2016/11/12 PHP
Javascript 学习书 推荐
2009/06/13 Javascript
javascript 写的一个简单的timer
2009/07/30 Javascript
拥抱模块化的JavaScript
2012/03/07 Javascript
5个最佳的Javascript日期处理类库分享
2012/04/15 Javascript
Javascript获取HTML静态页面参数传递值示例
2013/08/18 Javascript
jQuery中的$.ajax()方法应用
2014/05/06 Javascript
JavaScript获取元素尺寸和大小操作总结
2015/02/27 Javascript
跟我学习javascript的严格模式
2015/11/16 Javascript
js点击任意区域弹出层消失实现代码
2016/12/27 Javascript
vue下history模式刷新后404错误解决方法
2018/08/18 Javascript
详解Vue CLI3配置解析之css.extract
2018/09/14 Javascript
详解koa2学习中使用 async 、await、promise解决异步的问题
2018/11/13 Javascript
详解Vue 匿名、具名和作用域插槽的使用方法
2019/04/22 Javascript
jQuery实现判断滚动条滚动到document底部的方法分析
2019/08/27 jQuery
Python中使用Beautiful Soup库的超详细教程
2015/04/30 Python
使用numpy和PIL进行简单的图像处理方法
2018/07/02 Python
解决python打不开文件(文件不存在)的问题
2019/02/18 Python
Dlib+OpenCV深度学习人脸识别的方法示例
2019/05/14 Python
python pandas写入excel文件的方法示例
2019/06/25 Python
python UDF 实现对csv批量md5加密操作
2021/01/01 Python
解决html5中的video标签ios系统中无法播放使用的问题
2020/08/10 HTML / CSS
Dockers美国官方网站:卡其裤、男士服装、鞋及配件
2016/11/22 全球购物
彪马俄罗斯官网:PUMA俄罗斯
2019/07/13 全球购物
安全的后院和健身蹦床:JumpSport
2019/07/15 全球购物
美国农场商店:Blain’s Farm & Fleet
2020/01/17 全球购物
用JAVA实现一种排序,JAVA类实现序列化的方法(二种)
2014/04/23 面试题
环境工程大学生自荐信
2013/10/21 职场文书
积极贯彻学习两会精神总结
2014/03/17 职场文书
项目转让协议书
2014/10/27 职场文书
2015新员工试用期工作总结
2014/12/12 职场文书
2015感人爱情寄语
2015/02/26 职场文书
2015年医院保卫科工作总结
2015/07/23 职场文书
Vue ECharts实现机舱座位选择展示功能
2022/05/15 Vue.js