码迷,mamicode.com
首页 > 编程语言 > 详细

Python 截屏

时间:2020-01-16 12:36:58      阅读:89      评论:0      收藏:0      [点我收藏+]

标签:install   filename   iter   pywin32   select   div   图片大小   text   handle   

原文:https://www.cnblogs.com/wutaotaosin/p/9719292.html

 

 

pip安装库:

  pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pywin32

 

 

代码:

import time
import win32gui, win32ui, win32con, win32api


# 原文:https://www.cnblogs.com/wutaotaosin/p/9719292.html

def window_capture(filename):
  hwnd = 0 # 窗口的编号,0号表示当前活跃窗口
  # 根据窗口句柄获取窗口的设备上下文DC(Divice Context)
  hwndDC = win32gui.GetWindowDC(hwnd)
  # 根据窗口的DC获取mfcDC
  mfcDC = win32ui.CreateDCFromHandle(hwndDC)
  # mfcDC创建可兼容的DC
  saveDC = mfcDC.CreateCompatibleDC()
  # 创建bigmap准备保存图片
  saveBitMap = win32ui.CreateBitmap()
  # 获取监控器信息
  MoniterDev = win32api.EnumDisplayMonitors(None, None)
  w = MoniterDev[0][2][2]
  h = MoniterDev[0][2][3]
  # print w,h #图片大小
  # 为bitmap开辟空间
  saveBitMap.CreateCompatibleBitmap(mfcDC, w, h)
  # 高度saveDC,将截图保存到saveBitmap中
  saveDC.SelectObject(saveBitMap)
  # 截取从左上角(0,0)长宽为(w,h)的图片
  saveDC.BitBlt((0, 0), (w, h), mfcDC, (0, 0), win32con.SRCCOPY)
  saveBitMap.SaveBitmapFile(saveDC, filename)
beg = time.time()
for i in range(10):
  window_capture("haha.jpg")
end = time.time()
print(end - beg)

 

Python 截屏

标签:install   filename   iter   pywin32   select   div   图片大小   text   handle   

原文地址:https://www.cnblogs.com/guxingy/p/12200491.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!