在 pyautogui 中保存热键截图
Save hotkey screenshot in pyautogui
我在 pyautogui 中使用热键截取了屏幕截图,因为这样我只能获得 window 内容。现在我似乎无法挽救它。是我做错了什么还是有什么办法可以截屏?
screenshot = pyautogui.hotkey('alt', 'printscreen')
screenshot.save('temp.jpg')
表达式 pyautogui.hotkey('alt', 'printscreen')
不返回任何内容,因此您无法从中保存图像。
我能找到的最简单的解决方案是安装一些额外的模块:
pip install pillow keyboard
模块keyboard
用于创建更智能的热键,python函数作为回调。
这样的功能应该按Print Screen
将图像保存到剪贴板,然后我们可以使用PIL
模块从剪贴板获取图像并将其保存到文件。
示例如下:
import time
import pyautogui
import keyboard
from PIL import ImageGrab
def save_screenshoot():
pyautogui.press('printscreen')
im = ImageGrab.grabclipboard()
im.save('screenshoot.png','PNG')
keyboard.add_hotkey('alt', save_screenshoot)
while True:
# While this loop is active 'alt' wil save screenshoot
time.sleep(5)
我在 pyautogui 中使用热键截取了屏幕截图,因为这样我只能获得 window 内容。现在我似乎无法挽救它。是我做错了什么还是有什么办法可以截屏?
screenshot = pyautogui.hotkey('alt', 'printscreen')
screenshot.save('temp.jpg')
表达式 pyautogui.hotkey('alt', 'printscreen')
不返回任何内容,因此您无法从中保存图像。
我能找到的最简单的解决方案是安装一些额外的模块:
pip install pillow keyboard
模块keyboard
用于创建更智能的热键,python函数作为回调。
这样的功能应该按Print Screen
将图像保存到剪贴板,然后我们可以使用PIL
模块从剪贴板获取图像并将其保存到文件。
示例如下:
import time
import pyautogui
import keyboard
from PIL import ImageGrab
def save_screenshoot():
pyautogui.press('printscreen')
im = ImageGrab.grabclipboard()
im.save('screenshoot.png','PNG')
keyboard.add_hotkey('alt', save_screenshoot)
while True:
# While this loop is active 'alt' wil save screenshoot
time.sleep(5)