当你需要封装这个功能为一个函数,并允许自定义文件名时,可以按以下方式实现:
from PIL import ImageGrab
import os
import datetime
def capture_screen_and_save(filename, output_dir='C:\\screen'):
# 获取当前日期
today = datetime.date.today()
# 创建保存截图的目录
save_dir = os.path.join(output_dir, str(today))
os.makedirs(save_dir, exist_ok=True)
# 截取全屏
screenshot = ImageGrab.grab()
# 生成文件路径
timestamp = datetime.datetime.now().strftime("%Y%m%d%H%M%S")
file_path = os.path.join(save_dir, f'{filename}_{timestamp}.png')
# 保存截图
screenshot.save(file_path)
return file_path
# 使用示例
custom_filename = "my_screenshot"
saved_path = capture_screen_and_save(custom_filename)
print(f"截图已保存到: {saved_path}")
上面的代码定义了一个名为capture_screen_and_save的函数,它接受两个参数:filename(用于自定义文件名)和output_dir(保存目录的根路径,默认为C盘的'screen'目录)。这个函数会返回保存截图的文件路径。
使用时,你可以传递自定义的文件名给filename参数来保存截图,如示例中的"my_screenshot"。截图将会保存在指定的目录,文件名包含自定义名称和时间戳。
评论区(0 条)
发表评论⏳ 加载编辑器…