当前位置: 首页 > 编程笔记 >

Python实现截屏的函数

龙默
2023-03-14
本文向大家介绍Python实现截屏的函数,包括了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程序设计有所帮助。

 类似资料:
  • 本文向大家介绍python定时截屏实现,包括了python定时截屏实现的使用技巧和注意事项,需要的朋友参考一下 写在前面 因为暂时还没有想好做什么具体的某个项目来提升对python的理解,所以就自己想着做一下小玩意来加强一下自己对一些库和方法的理解 分析 1、截屏 截屏的话有pillow这个模块,并且就两条语句,后面会看到 2、定时任务 定时的话涉及到时间,所以会引入time这个模块 3、保存 保

  • 本文向大家介绍Python实现可自定义大小的截屏功能,包括了Python实现可自定义大小的截屏功能的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python实现可自定义大小的截屏功能。分享给大家供大家参考,具体如下: 蝈蝈这两天正忙着收拾家当去公司报道,结果做PHP的发小蛐蛐找到了他,说是想要一个可以截图工具。 大致需要做出这样的效果。 虽然已经很久不写Python代码了,但是没办法,盛

  • 函数功能:全屏截图返回图片对象 函数方法 img = image.snapshot() 返回值 类型 说明 img userdata/nil 截取后的图片对象,失败返回 nil 函数用例 img = image.snapshot() if img ~= nil then dialog("成功",5000) else dialog("失败",5000) end 注意事项 目前积木编

  • 本文向大家介绍android截屏功能实现代码,包括了android截屏功能实现代码的使用技巧和注意事项,需要的朋友参考一下 android开发中通过View的getDrawingCache方法可以达到截屏的目的,只是缺少状态栏! 原始界面 截屏得到的图片 代码实现 1. 添加权限(AndroidManifest.xml文件里) 2. 添加1个Button(activity_main.xml文件)

  • 本文向大家介绍Android实现的截屏小程序示例,包括了Android实现的截屏小程序示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Android实现的截屏小程序。分享给大家供大家参考,具体如下: 先看截图,不过这个截屏还不够完整,头上的statusbar没有,呈黑色。 多按了几次,就成这样了,呵呵。 资源文件: 更多关于Android相关内容感兴趣的读者可查看本站专题:《Andro

  • 本文向大家介绍Python 实现局域网远程屏幕截图案例,包括了Python 实现局域网远程屏幕截图案例的使用技巧和注意事项,需要的朋友参考一下 最近各地中小学都在开展线上教学,有些不自觉的小朋友们用电脑在线学习的时候会趁家长不在的时候偷偷玩游戏、看漫画。 本程序screenshot.py就是用来监控学生机(windows系统)屏幕活动的一个小脚本。 首先在学生机上安装python3环境。另外需要安