mbi*_*5tr 7 python screenshot tkinter python-imaging-library python-3.x
我有一个工具栏。它允许您一键截图:
def screenshot():
try:
os.mkdir(r"C:\Screenshots")
except FileExistsError:
pass
global img
img = ImageGrab.grab()
global today
today = time.strftime("%d_%B_%Y__%H_%m_%S")
saveas=os.path.join(SaveDirectory, "Screenshot_" + today + ".jpg")
img.save(saveas)
bubble = Thread(target = balloon_tip, args = ("Saved!", "Screenshot was saved at C:\Screenshots"))
bubble.start()
Run Code Online (Sandbox Code Playgroud)
但是我收到这个错误:
Exception in thread Thread-1:
Traceback (most recent call last):
File "C:\Python3.6\lib\threading.py", line 916, in _bootstrap_inner
self.run()
File "C:\Python3.6\lib\threading.py", line 864, in run
self._target(*self._args, **self._kwargs)
File "C:\Users\mbilal25tr\Desktop\Python Projects\Toolbar py\toolbar.pyw", line 140, in screenshot
img.save(saveas)
File "C:\Python3.6\lib\site-packages\PIL\Image.py", line 1725, in save
fp = builtins.open(filename, "w+b")
FileNotFoundError: [Errno 2] No such file or directory: 'C:\\Screenshot\\Screenshot_29_March_2017__19_03_01.jpg'
Run Code Online (Sandbox Code Playgroud)
但我不明白!不img.save()应该创建一个图像文件吗?为什么它在创建之前尝试打开它?我应该如何期望它找到它并运行而不会出现错误?
我正在使用Python 3。
小智 1
我认为你的变量有问题SaveDirectory,而不是函数有问题save。正如我从错误中看到的,SaveDirectory变量的值是C:\\Screenshot\\
,您想要保存该 img 的目录是C:\\Screenshots\\
及以下
这就是为什么你的程序找不到你想要保存的文件夹,因为“屏幕截图”和“屏幕截图”是与计算机完全不同的两个名称。
您需要做的就是修复SaveDirectory变量。
| 归档时间: |
|
| 查看次数: |
6392 次 |
| 最近记录: |