Python截图的五个方法实例总结

作者:快?乐?至?上? 时间:2022-07-13 10:40:04 

小主我总结了一下,看官仅供参考。具体运行时间,要看电脑,程序复杂程度,截图大小,原本为四个方法,后面又发现了一种。补上
运行熟练度等因素。

方法一:

速度快,截取单张时间大概零点几秒。但是程序很长。

如图:

Python截图的五个方法实例总结

红框内的是获得当前监视器设备的全屏尺寸。也可以可以不要,可以直接给w,h赋值,指定宽度和高度。红框上面的是获得设备准备条件。
第一个红线,是左边距和上边距填充背景色黑色,默认(0,0)就好,也可以自己试试。这里不加图了。

第二个红线就是指定的图片宽和高(>0)。第三个红线,所截图的左上角的坐标,若小于0,越界部分则填充黑色。

方法二:

速度一般,截取单张大概1秒左右,程序简单易懂。grab()如果不加参数,是全屏。四个参数分别是
x1,y1,x2,y2。即左上角和右下角坐标。

Python截图的五个方法实例总结

方法三:

大概也是1到2秒。不过这个库,要另外安装。

Python截图的五个方法实例总结

screenshot()如果不要 region 参数,是全屏。四个参数分别是
x,y,w,h。即左上角坐标和图片宽度 高度。

方法四:

可以用爬虫库 selenium 截图。

主程序该咋写咋写,截图用到:

browser.save_screenshot(filename),尺寸参数看官可以自己试试。或许后期我会补上

若定义函数,注意形参,传参写法。

方法五:

使用aotupy截图,如图:

Python截图的五个方法实例总结

capture_screen()函数,括号内如果为空,则是全凭截图。若要指定范围,就要这样写,因为它要求参数时一个长度为2的数组,函数要带括号,数组要带括号,长度为2,两组数,所以,注意括号匹配。第一个,是起点位置,第二个括号,是从起点开始的长读和宽度,所以 要计算。

补充:Python 指定区域截图

先上代码

from pyautogui import screenshot
import time
from PIL import ImageGrab
# Grab Screenshot of Screen
def grab_screenshot():
   shot = screenshot()
   shot.save('my_screenshot.png')
# Grab Screenshot of Specific Area
def grab_screenshot_area():
   area = (0, 0, 500, 500)   # 这里是设置截图范围的区域
   shot = ImageGrab.grab(area)
   shot.save('my_screenshot_area.png')
# Grab Screenshot with Delay
def grab_screenshot_delay():
   time.sleep(5)
   shot = screenshot()
   shot.save('my_screenshot_delay.png')

使用此脚本,你可以直接截屏或截取特定区域的屏幕截图。

可以加载在一些抢购的脚本中,把秒杀产品抢到手后,进行截图,然后继续抢下一个

来源:https://blog.csdn.net/xiaolegeyao/article/details/115051123

标签:python,截图
0
投稿

猜你喜欢

  • 详解Python3 对象组合zip()和回退方式*zip

    2021-03-01 11:14:09
  • window.location的重写及判断location是否被重写

    2024-04-28 10:18:17
  • JS+CSS实现过渡特效

    2024-05-02 16:14:18
  • 浅析JSON序列化与反序列化

    2024-03-22 12:50:05
  • PyTorch中model.zero_grad()和optimizer.zero_grad()用法

    2023-09-15 20:13:57
  • Django框架使用内置方法实现登录功能详解

    2021-11-01 00:54:50
  • pampy超强的模式匹配工具的实现

    2023-03-05 23:05:07
  • numpy排序与集合运算用法示例

    2022-08-25 10:23:06
  • js从数组中删除指定值(不是指定位置)的元素实现代码

    2024-04-16 10:28:26
  • Dreamweaver MX打造弹出“向导”

    2009-07-21 12:41:00
  • MySQL两个查询如何合并成一个结果详解

    2024-01-18 05:56:04
  • 基于Python实现主机远程控制

    2023-11-24 17:27:31
  • 利用Python生成文件md5校验值函数的方法

    2023-09-29 14:51:40
  • python发送多人邮件没有展示收件人问题的解决方法

    2023-01-03 05:16:10
  • Django项目中动态设置静态文件路径的全过程

    2021-07-12 00:52:24
  • canvas学习之API整理笔记(一)

    2024-04-10 10:54:24
  • 详解Hadoop 运行环境搭建过程

    2022-08-25 13:50:58
  • textarea 在IE和FF下换行无法正常显示的解决方法

    2022-09-11 01:33:40
  • Python处理JSON时的值报错及编码报错的两则解决实录

    2023-11-10 07:12:07
  • JPA之映射mysql text类型的问题

    2024-01-17 06:38:41
  • asp之家 网络编程 m.aspxhome.com