通过python实现windows桌面截图代码实例
作者:Maple_feng 发布时间:2023-11-19 03:46:27
标签:python,windows,桌面,截图
这篇文章主要介绍了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()
来源:https://www.cnblogs.com/angelyan/p/12196143.html
0
投稿
猜你喜欢
- <%@ Language=VBScript %><HTML><HEAD>
- 在Microsoft SQL Server 2000中,用于数据存储的实用工具是数据库。数据库的物理表现是操作系统文件,即在物理上,一个数据
- ASP 本身不支持动态包含文件,现在的动态包含是通过 FSO 把被包含的文件合并到主文件里再运行。以下也有把形如 <!--#
- 本文实例为大家分享了python实现图像拼接的具体代码,供大家参考,具体内容如下1.待拼接的图像2. 基于SIFT特征点和RANSAC方法得
- IEBlog公布了开发中的Internet Explorer 8 Beta2版本的最新功能.IE8 Beta2在第一个版本的基础上做出了很大
- HTML5之中一个很酷的新特性就是WebSockets,它可以让我们无需AJAX请求即可与服务器端对话。今天彬Go将让大家通过Php环境的服
- 这个我早就改好了一直没有放上来.现在发给大家用用注意这几个变量它们影响到提示框的效果代码:var rT=true;//允许图像过渡
- 一 描述561. 数组拆分 I - 力扣(LeetCode) (leetcode-cn.com)给定长度为 2n 的整数
- /* 功能: 通用分页存储过程 参数: @PK varchar(50), 主键,用来排序的单一字段,空的话,
- 将来电脑的大显示屏会越来越普及,并且从现在web设计作品中能观察到两点趋势:页面布局普遍更宽;页面内容文字普遍更大。使用1280×800和1
- 这些常量在 PHP 的内核中定义。它包含 PHP、Zend 引擎和 SAPI 模
- 1、删除Oracal在注册表中的主项:regedit.exe->LocalMachine->Software->Oracl
- php redis断线重连,pconnect连接失败问题介绍在swoole ,workerman等cli长连接模式下,遇到Redis异常断开
- <% Function FileCounter(counter_file) Dim fs,txt,fi
- 其实SQLServer提供了一个sp_spaceused的系统存储过程可以实现该功能,下面就是调用的SQL: 代码如下:crea
- 很棒的新闻发布系统分享给大家,希望大家喜欢。下面就让我们来说一说基于jsp的新闻发布系统,其中使用的技术有JavaBean、fillter、
- 我要说的内容都是非常基础的内容,高手就免看了,如果看了欢迎给点意见啊。新手或者对低层还不是很了解的人可以看看,帮助理解与记忆。XMLHttp
- 经常在网上冲浪的朋友是否曾注意到有些网站的鼠标不是规则的斜向上箭头的形状,而是"十"
- 我们前期开发了一个只有公司客服人员才能使用的系统——有限的几个客服人员。就是这有限的几个客服人员前几天突然就提出这样的问题:我们每隔很短一段
- 前言不管是做开发还是做过网站的朋友们,应该对于User Agent一点都不陌生,User Agent 中文名为用户代理,简称 UA,它是一个