通过python实现windows桌面截图代码实例


Posted in Python onJanuary 17, 2020

这篇文章主要介绍了python实现windows桌面截图代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

代码实例

import time

import win32api
import win32con
import win32gui
import win32ui


def get_desk():
  # 获取桌面
  hdesktop=win32gui.GetDesktopWindow()

  # 分辨率适配
  width=win32api.GetSystemMetrics(win32con.SM_CXVIRTUALSCREEN)
  height=win32api.GetSystemMetrics(win32con.SM_CYVIRTUALSCREEN)
  left=win32api.GetSystemMetrics(win32con.SM_XVIRTUALSCREEN)
  top=win32api.GetSystemMetrics(win32con.SM_YVIRTUALSCREEN)

  # 创建设备描述表
  desktop_dc=win32gui.GetWindowDC(hdesktop)
  img_dc=win32ui.CreateDCFromHandle(desktop_dc)

  # 创建一个内存设备描述表
  mem_dc=img_dc.CreateCompatibleDC()
  screenshot=win32ui.CreateBitmap()
  screenshot.CreateCompatibleBitmap(img_dc,width,height)# 为bitmap开辟空间
  mem_dc.SelectObject(screenshot) # 将截图保存到Bitmap中
  mem_dc.BitBlt((0,0),(width,height),img_dc,(left,top),win32con.SRCCOPY) # 截取从左上角(0,0)长宽为(w,h)的图片

  # 保存到文件
  time_tup=time.localtime(time.time())
  format_time="%Y-%m-%d_%a_%H-%M-%S"
  cur_time=time.strftime(format_time,time_tup)
  screenshot.SaveBitmapFile(mem_dc,'{}.bmp'.format(cur_time))

  # 释放内存
  mem_dc.DeleteDC()
  win32gui.DeleteObject(screenshot.GetHandle())

if __name__ == '__main__':
  get_desk()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python uuid模块使用实例
Apr 08 Python
简单介绍Python中的try和finally和with方法
May 05 Python
python实现下载文件的三种方法
Feb 09 Python
python 内置函数filter
Jun 01 Python
Python实现抓取网页生成Excel文件的方法示例
Aug 05 Python
Python实现读写sqlite3数据库并将统计数据写入Excel的方法示例
Aug 07 Python
python之Character string(实例讲解)
Sep 25 Python
Python pymongo模块用法示例
Mar 31 Python
详解多线程Django程序耗尽数据库连接的问题
Oct 08 Python
python实现换位加密算法的示例
Oct 14 Python
python基于C/S模式实现聊天室功能
Jan 09 Python
python中数字是否为可变类型
Jul 08 Python
PyTorch加载预训练模型实例(pretrained)
Jan 17 #Python
python 正则表达式参数替换实例详解
Jan 17 #Python
Python函数式编程实例详解
Jan 17 #Python
python实现tail -f 功能
Jan 17 #Python
解决Python命令行下退格,删除,方向键乱码(亲测有效)
Jan 16 #Python
python对象销毁实例(垃圾回收)
Jan 16 #Python
python读取dicom图像示例(SimpleITK和dicom包实现)
Jan 16 #Python
You might like
php下目前为目最全的CURL中文说明
2010/08/01 PHP
php中修改浏览器的User-Agent来伪装你的浏览器和操作系统
2011/07/29 PHP
Smarty中常用变量操作符汇总
2014/10/27 PHP
Laravel如何实现适合Api的异常处理响应格式
2020/06/14 PHP
js substr、substring和slice使用说明小记
2011/09/15 Javascript
javascript判断数组内是否重复的方法
2015/04/21 Javascript
jquery特效 点击展示与隐藏全文
2015/12/09 Javascript
javascript鼠标右键菜单自定义效果
2020/12/08 Javascript
JS集成fckeditor及判断内容是否为空的方法
2016/05/27 Javascript
Jquery Easyui对话框组件Dialog使用详解(14)
2016/12/19 Javascript
微信小程序 sha1 实现密码加密实例详解
2017/07/06 Javascript
Angular7.2.7路由使用初体验
2019/03/01 Javascript
通过vue写一个瀑布流插件代码实例
2019/09/07 Javascript
jQuery利用cookie 实现本地收藏功能(不重复无需多次命名)
2019/11/07 jQuery
原生js实现拖拽移动与缩放效果
2020/08/24 Javascript
[02:28]PWL开团时刻DAY3——Ink Ice与DeMonsTer之间的勾心斗角
2020/11/03 DOTA
python实现自动登录人人网并访问最近来访者实例
2014/09/26 Python
详解从Django Rest Framework响应中删除空字段
2019/01/11 Python
解决Pandas的DataFrame输出截断和省略的问题
2019/02/08 Python
pytorch 模拟关系拟合——回归实例
2020/01/14 Python
利用Python自动化操作AutoCAD的实现
2020/04/01 Python
基于FME使用Python过程图解
2020/05/13 Python
Django模型验证器介绍与源码分析
2020/09/08 Python
解决pip安装tensorflow中出现的no module named tensorflow.python 问题方法
2021/02/20 Python
CSS3中利用animation属性创建雪花飘落特效
2014/05/14 HTML / CSS
常用的HTML5列表标签
2017/06/20 HTML / CSS
戴尔加拿大官网:Dell加拿大
2016/09/17 全球购物
美国最大的网上冲印店:Shutterfly
2017/01/01 全球购物
西班牙灯具网上商店:Lampara.es
2018/06/05 全球购物
英国在线女鞋目的地:SIMMI
2018/12/27 全球购物
值传递还是引用传递
2015/02/08 面试题
报关简历自我评价怎么写
2013/09/19 职场文书
财务部岗位职责
2013/11/19 职场文书
员工培训邀请函
2014/01/11 职场文书
保密工作责任书
2014/04/16 职场文书
预备党员公开承诺书
2014/05/28 职场文书