python3.7在电脑屏幕指定区域截屏并保存

要在 Python 3.7 中实现对电脑屏幕指定区域的截屏并保存,可以使用 Pillow(PIL fork)库和 pygetwindow 库(用于获取窗口位置)或 pyautogui 库(用于截屏)。下面是详细的步骤和代码示例。

步骤

  1. 安装必要的库: 使用 pip 安装以下库:

    bash
    pip install pillow pygetwindow pyautogui
  2. 编写代码: 以下代码展示了如何截取屏幕的指定区域并将图像保存到文件中。

示例代码

python
from PIL import Image import pyautogui def capture_screen_area(left, top, width, height, output_file): """ 截取屏幕指定区域并保存为文件。 参数: left (int): 区域左上角的 x 坐标 top (int): 区域左上角的 y 坐标 width (int): 区域的宽度 height (int): 区域的高度 output_file (str): 保存截图的文件名(包括路径) """ # 截取指定区域 screenshot = pyautogui.screenshot(region=(left, top, width, height)) # 保存图像 screenshot.save(output_file) print(f"截图已保存为 {output_file}") if __name__ == "__main__": # 指定截图区域的左上角坐标、宽度和高度 left = 100 top = 100 width = 800 height = 600 # 指定输出文件名 output_file = "screenshot.png" # 调用函数截取屏幕区域并保存 capture_screen_area(left, top, width, height, output_file)

代码解释

  1. 导入库:

    python
    from PIL import Image import pyautogui

    Pillow 用于处理图像,pyautogui 用于截屏。

  2. 定义 capture_screen_area 函数:

    python
    def capture_screen_area(left, top, width, height, output_file):
    • lefttop 指定截屏区域的左上角坐标。
    • widthheight 指定区域的宽度和高度。
    • output_file 指定保存截图的文件名。
  3. 截取屏幕区域:

    python
    screenshot = pyautogui.screenshot(region=(left, top, width, height))

    使用 pyautogui.screenshot() 方法和 region 参数指定截屏区域。

  4. 保存图像:

    python
    screenshot.save(output_file)

    使用 save() 方法将图像保存为指定的文件。

  5. 执行代码: 在 __main__ 块中,设置截图区域的坐标、宽度、高度和输出文件名,然后调用 capture_screen_area 函数进行截图。

注意事项

  • 坐标和尺寸: 确保 left, top, width, height 的值在屏幕分辨率范围内。
  • 文件路径: output_file 可以包含路径,如 "path/to/screenshot.png",确保目录存在。
  • 依赖库: pyautoguiPillow 库的版本要与 Python 3.7 兼容。

通过这些步骤和代码,你可以在 Python 3.7 中对指定区域进行截屏并保存图像。如果有其他需求或问题,请随时告知!