在Windows上使用Python实现全屏幕截图并保存为文件

作者:佚名 上传时间:2023-04-19 运行软件:PyCharm Community Edition 2020.1.1 软件版本:Python 3.7.3 | PIL 8.0.1 | tkinter 8.6 | Windows 10 版权申诉

本示例展示如何使用Python在Windows操作系统上实现实时全屏截图功能,并将截图保存为文件。实现方式是使用PIL库中的ImageGrab模块完成截图,并使用tkinter库来实现图形界面。用户可以选择保存的文件格式和保存的路径,并监视已保存的截图文件数。

from PIL import ImageGrab
import tkinter as tk
import os

class ScreenShot(tk.Frame):
    def __init__(self, master=None):
        super().__init__(master)
        self.pack()
        self.create_widgets()

    def create_widgets(self):
        # 添加按钮
        self.snap_button = tk.Button(self)
        self.snap_button["text"] = "截 屏"
        self.snap_button["command"] = self.take_screenshot
        self.snap_button.pack(side="left")

        # 添加一个label用于显示已保存的截图数
        self.count_label = tk.Label(self, text="已保存截图数: 0")
        self.count_label.pack(side="right")

    def take_screenshot(self):
        # 获取整个屏幕的截图
        screenshot = ImageGrab.grab()

        # 选择保存路径和文件格式
        path = os.path.abspath(os.curdir)
        path = os.path.join(path, "screenshots")
        if not os.path.exists(path):
            os.mkdir(path)
        format_choice = [("JPEG", "*.jpg"), ("BMP", "*.bmp"), ("PNG", "*.png")]
        format_chosen = tk.filedialog.asksaveasfilename(filetypes=format_choice, defaultextension=format_choice)

        # 保存截图文件
        screenshot.save(format_chosen)

        # 更新已保存截图数
        files = os.listdir(path)
        count = len(files)
        self.count_label.config(text=f"已保存截图数: {count}")

root = tk.Tk()
app = ScreenShot(master=root)
app.mainloop()

免责申明:文章和图片全部来源于公开网络,如有侵权,请通知删除 server@dude6.com

用户评论
相关推荐
Windows使用Python实现全屏幕截图保存为文件
本示例展示如何使用Python在Windows操作系统上实现实时全屏截图功能,并将截图保存为文件。实现方式是使用PIL库中的ImageGrab模块完成截图,并使用tkinter库来实现图形界面。用户可
Python 3.7.3 | PIL 8.0.1 | tkinter 8.6 | Windows 10
PyCharm Community Edition 2020.1.1
2023-04-19 08:27
WindowsPython获取屏幕截图保存为图像文件
该示例代码展示了如何在Windows操作系统下使用Python获取屏幕截图,并将截图保存为图像文件的过程。实现方式是使用PIL库中的ImageGrab模块。from PIL import Image
Python 3.7.3
PIL库
2023-04-23 12:40
macOS下使用Python实现窗口截图保存为图片
本示例代码演示如何在macOS上使用Python编写程序实现窗口截图,并将截图保存为图片文件。具体实现方式是借助PyObjC库调用系统API实现。import Quartz # 导入Quartz库
macOS 10.15.7
Python 3.9.1
2023-04-21 00:41
opencv python视屏截图功能的实现
OpenCV简介 OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数
PDF
162KB
2020-12-22 07:33
使用HTML截图保存为本地图片的实现代码
本文通过实例代码给大家分享了使用HTML截图并保存为本地图片的实现代码,代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友参考下吧
PDF
36KB
2020-11-17 03:40
opencv python视屏截图
介绍 因为我是一个小白,所以代码就比较简单,如果有错误,希望大家可以评论下告诉我,感激。 效果 蓝色框框是我们要截下的图 这是截完后的图 代码 import cv2 import numpy as n
PDF
190KB
2021-02-01 12:27
使用PythonWindows实现文件重命名加入日期前缀
本示例代码演示了如何在Windows上使用Python实现文件重命名并加入当前日期的前缀。实现方式使用了Python的os模块和datetime模块来获取文件名和当前日期,并使用字符串拼接的方法生成新
Python 3.x
Python
2023-05-30 02:12
使用PythonWindows检测USB挂载拷贝文件
该示例代码演示了如何使用Python在Windows上检测USB设备的挂载,并自动拷贝指定文件到计算机本地文件夹中。通过注册Windows的消息钩子,在USB插入时调用自定义的函数进行文件拷贝操作。
Python 3.7.0
PyCharm 2019.1
2023-05-22 11:27
linux centos使用puppeteer实现网页截图功能
主要介绍了在linux (centos)上使用puppeteer实现网页截图功能,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
PDF
51KB
2020-09-21 09:33
RedisWindows安装配置
通过图形化界面安装Redis,配置开机自启和设置密码。
zip
43.77MB
2024-05-03 04:00