Python 截屏

Posted guxingy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 截屏相关的知识,希望对你有一定的参考价值。

原文: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)

 

from PIL import ImageGrab
im = ImageGrab.grab() #可以添加一个坐标元组进去
im.save(\'12.png\')

 

以上是关于Python 截屏的主要内容,如果未能解决你的问题,请参考以下文章

Python 截屏

Python盗号原理-代码实现截屏键盘记录远程发送(不要做坏事)

Python盗号原理-代码实现截屏键盘记录远程发送(不要做坏事)

Python盗号原理-代码实现截屏键盘记录远程发送(不要做坏事)

python编程实现截屏操作

Python中的截屏模块 pyscreenshot