Python实现截屏的函数

本文实例讲述了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程序设计有所帮助。

(0)

相关推荐

  • Python编写屏幕截图程序方法

    正在编写的程序用的很多Windows下的操作,查了很多资料.看到剪切板的操作时,想起以前想要做的一个小程序,当时也没做,现在正好顺手写完. 功能:按printscreen键进行截图的时候,数据保存在剪切板里面,很不方便.比如游戏的时候截一个瞬间的图片,但你不能退出游戏保存图片,不方便多次截图.而我也不喜欢安装各种软件,所以准备写这个工具. 思路:一个是自定义快捷键,截图,保存.考虑到很可能各种冲突,取消.然后还是用按printscreen来截图,然后从剪切板读取图片数据,保存.想法是,先监听键盘

  • python实现清屏的方法

    本文实例讲述了python实现清屏的方法.分享给大家供大家参考.具体分析如下: 一试: >>> import os >>> os.system('cls') 会出现: 0 >>> 再试: >>> import os >>> i = os.system('cls') 很干净很干净的哟! 总结:用系统的清屏命令. 希望本文所述对大家的Python程序设计有所帮助.

  • 使用python编写android截屏脚本双击运行即可

    测试的过程中经常需要截取屏幕,通常的做法是使用手机自带的截屏功能,然后将截屏文件复制出来,这种方法的优点是不需要连接数据线就可截屏,缺点则是生成的截屏文件命名是随机命名的,复制出来也比较麻烦.另一种方法是使用PC端的手机助手类软件. 这里使用python编写一个截屏的脚本,双击运行脚本就OK,截屏成功后会将截屏文件已当前时间命名,并保存在存放脚本的当前路径的screenshot文件夹下: #!/usr/bin/env python import os import time PATH = lam

  • linux下python抓屏实现方法

    本文实例讲述了linux下python抓屏实现方法.分享给大家供大家参考.具体实现代码如下: #!/usr/bin/python '''by zevolo, 2012.12.20 ''' import gtk.gdk import gtk import glib class MyRect(): def __init__(self, x = 0, y = 0, w = 0, h = 0): self.x = x self.y = y self.w = w self.h = h def __init

  • Python实现截屏的函数

    本文实例讲述了Python实现截屏的函数.分享给大家供大家参考.具体如下: 1.可指定保存目录. 2.截屏图片名字以时间为文件名 3.截屏图片存为JPG格式图片,比BMP小多的,一个1024*800的截屏BMP有3M多,一个1024*800的JPG只有300K左右. 就可做一个简单的监控了,每10秒截一屏,放到一个指定隐藏的文件夹里,基本掌握机子的使用了,适合监控自家小孩的使用情况 # -*- coding: cp936 -*- import time,Image import os, win3

  • 如何使用python写截屏小工具

    前言 今天我看了一下自己的文件夹,发现了自己写了许多似乎很无聊的代码.于是乎,一个想法油然而生:"生活已经很无聊了,不如再无聊一点叭". 说干就干,那就开一个专题,我们称之为kimol君的无聊小发明. 妙-啊~~~ 今天要做的东西,就是用python写一个截屏工具.想必大家平时截屏的时候很多都是用的微信的ALT+A或者是WINDOWS自带的截屏软件.作为技术宅的我,怎么总是用别人的东西呢? 看我的,上图: 效果还阔以,好歹这个小猫咪截出来也是有模有样的~ 一.技术实现 1. 相关库 在

  • python定时截屏实现

    写在前面 因为暂时还没有想好做什么具体的某个项目来提升对python的理解,所以就自己想着做一下小玩意来加强一下自己对一些库和方法的理解 分析 1.截屏 截屏的话有pillow这个模块,并且就两条语句,后面会看到 2.定时任务 定时的话涉及到时间,所以会引入time这个模块 3.保存 保存的话因为是会有多个图片,所以需要一个目录来接,这里我就放在了根目录下的png目录下,并且对目录是否存在做了处理 代码 # python3 author jin xiang import time from PI

  • Python实现可自定义大小的截屏功能

    本文实例讲述了Python实现可自定义大小的截屏功能.分享给大家供大家参考,具体如下: 蝈蝈这两天正忙着收拾家当去公司报道,结果做PHP的发小蛐蛐找到了他,说是想要一个可以截图工具. 大致需要做出这样的效果. 虽然已经很久不写Python代码了,但是没办法,盛情难却啊,只好硬着头皮上了. 关于这个需求,蝈蝈想了想,脑海里大概有这么几个实现的方式. ① 调用QQ的截图工具. ② 自己写一个. 这第一个嘛,应了那句老话.理想很丰满,现实很骨感.因为被集成的缘故,剖不出来是没办法用的,自认为技术还不到

  • python 实现的截屏工具

    项目地址 https://github.com/fandesfyf/Jamscreenshot 功能概述 新增了透视裁剪工具(类似于PS里的用法).多边形截图工具.取色器工具.油漆桶工具.背景还原画笔(配合背景橡皮擦使用).支持回退10步操作历史记录.新增一键还原按钮.新增智能选框的开关.画笔等增加透明度支持,在画笔/标记时可以通过按住ctrl键+滚轮快速调整画笔透明度,新增常用颜色到取色按钮(鼠标划过即可显示).固定截屏在屏幕上时可以通过按住ctrl+滚轮快速调节截屏的透明度 效果图 加了一个

  • 利用Python为iOS10生成图标和截屏

    简介 这两天更新完Xcode8之后发现Xcode对图标的要求又有了变化,之前用的一个小应用"IconKit"还没赶上节奏,已经不能满足Xcode8的要求了. 于是就想起来用Python自己做个脚本来生成图标. 其实这个脚本很早就写了,现在为了适应iOS10,就修改完善下,并且放到了GitHub. 可以看看效果图: 1.png 代码: #encoding=utf-8 #by 不灭的小灯灯 #create date 2016/5/22 #update 2016/9/21 #support

  • 教你用Python脚本快速为iOS10生成图标和截屏

    简介 这两天更新完Xcode8之后发现Xcode对图标的要求又有了变化,之前用的一个小应用"IconKit"还没赶上节奏,已经不能满足Xcode8的要求了. 于是就想起来用Python自己做个脚本来生成图标. 其实这个脚本很早就写了,现在为了适应iOS10,就修改完善下,并且放到了 GitHub . 可以看看效果图: 代码: #encoding=utf-8 #by 不灭的小灯灯 #create date 2016/5/22 #update 2016/9/21 #support iOS

  • python PyAutoGUI 模拟鼠标键盘操作和截屏功能

    简介 一款跨平台/无依赖的自动化测试工具,目测只能控制鼠标/键盘/获取屏幕尺寸/弹出消息框/截屏. 安装 pip install pyautogui 鼠标键盘控制 >>> import pyautogui >>> screenWidth, screenHeight = pyautogui.size() >>> currentMouseX, currentMouseY = pyautogui.position() >>> pyautog

  • Python使用Phantomjs截屏网页的方法

    实例如下所示: #!/usr/bin/python # -*- coding:utf8 -*- from selenium import webdriver import os driver1 = webdriver.PhantomJS(executable_path='/usr/local/bin/phantomjs') driver1.get("http://www.csdn.net") data = driver1.title driver1.save_screenshot('c

随机推荐