一、计算机中如何进行屏幕截图呢?

1、全屏截图

按下键盘中的‘PRTSC’或者‘Print Screen’键,即可实现全屏截图(不同键盘位置和名称可能不同)。此时,并不能看到效果,只是将截图保存在粘贴板中,我们打开Word或者其它windows自带的画图板工具(以画图板工具为例)。我们打开画图板直接按下‘Ctrl’+ 'V'粘贴即可。然后你可以对该图片执行其它操作了。

2、截取当前活动窗口

如何截取当前活动窗口的图片呢?我们使用‘Print Screen’+ ‘Alt’组合键即可完成该操作。截图快捷键如下所示。

二、使用Python进行屏幕截图

我们需要用到Python的pillow模块中的ImageGrab类的grab()方法即可实现,具体代码如下:

img = ImageGrab.grab(bbox=(x, y, width, height))

该方法中bbox参数中传入需要截取图片的区域即可。其中x、y表示截取图片的左上角位置坐标,width、height参数中传入截取图片的宽度和高度。

如果是全屏幕截取,则x, y = 0, 0;width、height传入屏幕分辨率中的宽度和高度即可。

屏幕分辨率

Python获取屏幕分辨率并实现全屏截图的方案:

1.使用pywin32模块(需要安装该模块):

# 导入模块import win32api, win32confrom PIL import ImageGrab# 获取当前分辨率下的屏幕尺寸width = win32api.GetSystemMetrics(win32con.SM_CXSCREEN)height = win32api.GetSystemMetrics(win32con.SM_CYSCREEN)# 全屏幕截图img = ImageGrab.grab(bbox=(0, 0, width, height))# 保存截图img.save('full_screen_img.jpg')

2.使用tkinter模块

# 导入模块import tkinterfrom PIL import ImageGrab# 获取当前分辨率下的屏幕尺寸win = tkinter.Tk()width = win.winfo_screenwidth()height = win.winfo_screenheight()# 全屏幕截图img = ImageGrab.grab(bbox=(0, 0, width, height))# 保存截图img.save('full_screen_img.jpg')

这样,就完成了使用Python进行全屏截图的操作。其实,已知需要截图的坐标和尺寸,只用两行代码就可以搞定了。

img = ImageGrab.grab(bbox=(0, 0, width, height))img.save(filename)

如果要截取一部分屏幕,那么,我们在设计软件时只需要传入起始坐标点位置(图片左上角位置)和图片的宽度、高度信息就可以实现截取指定区域位置的图片内容了。

用Python进行屏幕截图,只用两行代码搞定相关推荐

  1. python实现屏幕截图_电脑截屏操作有哪些,用Python进行屏幕截图,只用两行代码搞定...

    对于自媒体作者或者经常编辑进行文本编辑的人来讲,屏幕截图应该是一个很常见的操作.今天,带大家一起体验一下Python屏幕截图的操作,通过这篇内容你可以复习以下知识点: Python截图屏幕图片 使用P ...

  2. 机器学习练习数据哪里找?两行代码搞定!

    初学者学习机器学习的时候,经常会找不到练习的数据,实际上scikit-learn内置了很多可以用于机器学习的数据,可以用两行代码就可以使用这些数据. 一.自带数据集 自带的小的数据集为:sklearn ...

  3. 自带的数据集_机器学习练习数据哪里找?两行代码搞定!

    初学者学习机器学习的时候,经常会找不到练习的数据,实际上scikit-learn内置了很多可以用于机器学习的数据,可以用两行代码就可以使用这些数据. 一.自带数据集 自带的小的数据集为:sklearn ...

  4. 两行代码搞定iOS自定义HUD风格动画弹窗(支持选择记录) - SKChoosePopView的使用和实现思路

    作者 ShevaKuilin 关注 2017.03.25 18:28* 字数 2014 阅读 270评论 0喜欢 23 さらい屋五葉 原文地址----> MyBlog HUD风格的选项弹窗是我们 ...

  5. 一行代码搞定 FTP 服务

    环境搭建: python windows/linux pip install pyftpdlib (安装失败请到这里下载:https://pypi.python.org/pypi/pyftpdlib/ ...

  6. 一气之下,我一行代码搞定了约瑟夫环问题,面试官懵了

    大家好,我是帅地. 对于约瑟夫环问题估计大家都听说过,除非你刚刚读大一,因为在大一大部分学校的课本都会降到这个算法题.为了以防万一你没听过,我还是给下问题的描述 问题描述:编号为 1-N 的 N 个士 ...

  7. Python编程语言学习:两行代码输出根目录下所有子文件夹的绝对路径、相对路径

    Python编程语言学习:两行代码输出根目录下所有子文件夹的绝对路径.相对路径 目录 两行代码输出根目录下所有子文件夹的绝对路径.相对路径 两行代码输出根目录下所有子文件夹的绝对路径.相对路径 #Py ...

  8. 【Python】Autoviz: 一行代码搞定数据集探索并可视化

    数据集各个特征有什么变化趋势.各个特征之间有何关系,我们可以借助Matplotlib.Seaborn等诸多工具来可视化展示,那么有没有一种工具能一次展示所有的关系了? 本文要介绍的Python工具Au ...

  9. 【Python基础】pandas的骚操作:一行 pandas 代码搞定 Excel “条件格式”!

    来源:Python数据科学 作者:东哥起飞 本篇是pandas100个骚操作系列的第 7 篇:一行 pandas 代码搞定 Excel "条件格式"! 系列内容,请看????「pa ...

最新文章

  1. android中进程的优先级
  2. 堆溢出DWORD SHOOT原理
  3. 全球及中国婚礼鲜花行业运营模式分析及投资战略评估报告2022-2027年版
  4. hdu 2441(ACM(Array Complicated Manipulation))
  5. Google 出的 Guava 是个什么鬼
  6. JVM内存管理------GC算法精解(复制算法与标记/整理算法)
  7. 数据库数据过长避免_为什么要避免使用商业数据科学平台
  8. 微服务精华问答 | 如何理解中台战略和微服务
  9. 远程办公、游戏迅猛增长,旅行、汽车业遭重创!疫期移动互联网行业报告解读...
  10. java提示没有main,有main方法却还是提示没有
  11. MAgent安装及初步试验
  12. 怎样自学unity是效率最高的
  13. c语言换行用分号代替,go语言换行的地方可以用分号替代吗?
  14. 一个微信投票小程序防止刷票的想法
  15. 【渝粤题库】陕西师范大学163208 饭店管理 作业
  16. linux 查看vcf文件,VCF格式文件的shell小练习
  17. 【清除office待激活密钥】
  18. mysql面试题50
  19. 如何获取宝宝取名软件注册码
  20. MySQL常见错误:Starting MySQL...The server quit without updating PID file (/usr/local/mysql/data/localhos

热门文章

  1. matlab教程蚁群算法,蚁群算法怎样用MATLAB仿真
  2. Java:抽象类笔记
  3. Java_基础—List的三个子类的特点
  4. JavaScript一个简易枚举类型实现扑克牌
  5. Unity之CharacterController2D学习笔记(1)——基础使用
  6. oldboy_09_03day
  7. 程序员职业生涯的11个阶段程序人生
  8. openwrt mt7620 内存大小检测
  9. 关于使用ModelSim中编写testbench模板问题
  10. hadoop环境安装及简单Map-Reduce示例