python 自定义截图快捷键

1. 目标: 全局下按下 alt+printScreen,窗口截图直接保存到桌面。

以前用ubuntu,按下 alt+printScreen, 截图就自动保存到了桌面。换到windows 10 , 截图被保存到了剪切板,总觉得缺了一步,所以写一个python小文件来把这一步给填上。

2. 新建一个 print_screen.pyw 文件, 注意是 .pyw

import os
import time
from datetime import datetime
import pyautogui
from pynput import keyboard


# 设置保存截图的目录
desktop = os.path.join(os.path.expanduser("~"), "Desktop")


def on_activate():
    # 获取当前时间并格式化为字符串
    current_time = datetime.now().strftime("%Y_%m_%d_%H_%M_%S")
    screenshot_path = os.path.join(desktop, f"{current_time}.png")

    # 截图并保存
    screenshot = pyautogui.screenshot()
    screenshot.save(screenshot_path)
    print(f"Screenshot saved to {screenshot_path}")


# 定义键盘组合键
hotkey = keyboard.HotKey(keyboard.HotKey.parse('<alt>+<print_screen>'), on_activate)


def for_canonical(f):
    return lambda k: f(l.canonical(k))


# 监听键盘事件
with keyboard.Listener(on_press=for_canonical(hotkey.press),
                       on_release=for_canonical(hotkey.release)) as l:
    l.join()

3. 在新建一个 save_image.bat 文件

!!!注意这里需要换成自己的文件路径。

"C:\Users\Administrator\AppData\Local\Programs\Python\Python38\pythonw.exe" "C:\Users\Administrator\Desktop\tools\print_screen.pyw"
pause

4. 然后把save_image.bat 这个文件拖进这个位置:

C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

5. 然后就是重启试试看。开机之后会有一个终端弹出来,关掉即可。

目前我只定义一个截图快捷键,也可以新建一些其他的快捷键,欢迎补充。
另外,我的电脑版本信息:
操作系统 Windows 10 OS Version 1809 (Build 17763.737)
Python 3.8.5

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容