寫在前面因為暫時還沒有想好做什麼具體的某個專案來提升對python的理解,所以就自己想著做一下小玩意來加強一下自己對一些庫和方法的理解分析1、截圖截圖的話有pillow這個模組,並且就兩條語句,後面會看到2、定時任務定時的話涉及到時間,所以會引入time這個模組3、儲存儲存的話因為是會有多個圖片,所以需要一個目錄來接,這裡我就放在了根目錄下的png目錄下,並且對目錄是否存在做了處理程式碼
# python3 author jin xiang
import time
from PIL import ImageGrab
import os
#這裡是為了如果找不到png這個目錄的情況自己建一個png目錄
absPath = os.path.abspath('.')
path = [x for x in os.listdir('.') if os.path.isdir(x)]
# print(path)
if 'png' in path:
#print('yes')
pass
else:
#print('no')
#建立目錄
pngPath = os.path.join(absPath,'png')
os.mkdir(pngPath)
#截圖
def Screenshot():
nowtime = time.strftime('%Y_%m_%d_%H_%M_%S',time.localtime(time.time()))
print(nowtime)
# 截圖語句很簡單的
im = ImageGrab.grab()
# 儲存(圖個有png路徑或者別的路徑需要在這個路徑下有這個目錄,不然報錯,所以我前面是做了規避,沒路徑我就自己建一個)
im.save(r'png\%s.png' %(nowtime))
while True:
print("截圖!")
Screenshot()
print("暫停")
print("\n")
time.sleep(10) #定時10s看一下
效果
圖片成功儲存了。
補充知識:python opencv 定時器 攝像頭自動截圖小程式
我就廢話不多說了,大家還是直接看程式碼吧~
import threading
import cv2
global timer
import sys
def shot_img():
global num
success, frame = cameraCapture.read()
path = "H://pythonr"
cv2.imwrite( path +'a[num]' + '.jpg', frame)
print(num)
num += 1
if num==10:
cameraCapture.release()
cv2.destroyAllWindows()
sys.exit()
timer = threading.Timer(1, shot_img)
timer.start()
if __name__ == '__main__':
num=0
cameraCapture = cv2.VideoCapture(0)
timer = threading.Timer(1,shot_img)
timer.start()