通过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中break语句的用法
May 14 Python
Python使用lxml模块和Requests模块抓取HTML页面的教程
May 16 Python
python学习之面向对象【入门初级篇】
Jan 21 Python
Python做简单的字符串匹配详解
Mar 21 Python
python如何读写json数据
Mar 21 Python
Django1.9 加载通过ImageField上传的图片方法
May 25 Python
python中update的基本使用方法详解
Jul 17 Python
Python爬虫图片懒加载技术 selenium和PhantomJS解析
Sep 18 Python
Ubuntu下Python+Flask分分钟搭建自己的服务器教程
Nov 19 Python
Python通过4种方式实现进程数据通信
Mar 12 Python
python操作ini类型配置文件的实例教程
Oct 30 Python
python IP地址转整数
Nov 20 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中cookie的作用域
2008/03/27 PHP
简单分析ucenter 会员同步登录通信原理
2014/08/25 PHP
TP3.2批量上传文件或图片 同名冲突问题的解决方法
2017/08/01 PHP
jQuery Flash/MP3/Video多媒体插件
2010/01/18 Javascript
JS 非图片动态loading效果实现代码
2010/04/09 Javascript
javascript浏览器窗口之间传递数据的方法
2015/01/20 Javascript
JavaScript中的setUTCDate()方法使用详解
2015/06/11 Javascript
jquery实现动静态条形统计图
2015/08/17 Javascript
使用jquery插件qrcode生成二维码
2015/10/22 Javascript
jquery ajax分页插件的简单实现
2016/01/27 Javascript
EditPlus中的正则表达式 实战(4)
2016/12/15 Javascript
基于JS实现翻书效果的页面切换样式
2017/02/16 Javascript
vue生命周期与钩子函数简单示例
2019/03/13 Javascript
原生JS实现列表内容自动向上滚动效果
2019/05/22 Javascript
Python实现选择排序
2017/06/04 Python
Python字符串和字典相关操作的实例详解
2017/09/23 Python
python绘制简单折线图代码示例
2017/12/19 Python
Python通过OpenCV的findContours获取轮廓并切割实例
2018/01/05 Python
Python实现随机漫步功能
2018/07/09 Python
python 提取tuple类型值中json格式的key值方法
2018/12/31 Python
Python 保持登录状态进行接口测试的方法示例
2019/08/06 Python
python采集百度搜索结果带有特定URL的链接代码实例
2019/08/30 Python
Python实现自动签到脚本功能
2020/08/20 Python
h5页面背景图很长要有滚动条滑动效果的实现
2021/01/27 HTML / CSS
英国演唱会订票网站:Ticket Selection
2018/03/27 全球购物
个人求职简历中英文自我评价
2013/12/16 职场文书
博士毕业生自我鉴定范文
2014/04/13 职场文书
房地产广告策划方案
2014/05/15 职场文书
知识改变命运演讲稿
2014/05/21 职场文书
干部选拔任用方案
2014/05/26 职场文书
2015年财务人员个人工作总结
2015/07/27 职场文书
2015年中秋寄语
2015/07/31 职场文书
幼儿园大班开学寄语(2016秋季)
2015/12/03 职场文书
2016反腐倡廉警示教育心得体会
2016/01/13 职场文书
php实现自动生成验证码的实例讲解
2021/11/17 PHP
Docker安装MySql8并远程访问的实现
2022/07/07 Servers