python定時(shí)截屏實(shí)現(xiàn)
寫在前面
因?yàn)闀簳r(shí)還沒有想好做什么具體的某個(gè)項(xiàng)目來提升對(duì)python的理解,所以就自己想著做一下小玩意來加強(qiáng)一下自己對(duì)一些庫(kù)和方法的理解
分析
1、截屏
截屏的話有pillow這個(gè)模塊,并且就兩條語句,后面會(huì)看到
2、定時(shí)任務(wù)
定時(shí)的話涉及到時(shí)間,所以會(huì)引入time這個(gè)模塊
3、保存
保存的話因?yàn)槭菚?huì)有多個(gè)圖片,所以需要一個(gè)目錄來接,這里我就放在了根目錄下的png目錄下,并且對(duì)目錄是否存在做了處理
代碼
# python3 author jin xiangimport timefrom PIL import ImageGrabimport os#這里是為了如果找不到png這個(gè)目錄的情況自己建一個(gè)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’) passelse: #print(’no’) #創(chuàng)建目錄 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) # 截屏語句很簡(jiǎn)單的 im = ImageGrab.grab() # 保存(圖個(gè)有png路徑或者別的路徑需要在這個(gè)路徑下有這個(gè)目錄,不然報(bào)錯(cuò),所以我前面是做了規(guī)避,沒路徑我就自己建一個(gè)) im.save(r’png%s.png’ %(nowtime))while True: print('截圖!') Screenshot() print('暫停') print('n') time.sleep(10) #定時(shí)10s看一下
效果
圖片成功保存了。
補(bǔ)充知識(shí):python opencv 定時(shí)器 攝像頭自動(dòng)截圖小程序
我就廢話不多說了,大家還是直接看代碼吧~
import threadingimport cv2global timerimport sysdef 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()
以上這篇python定時(shí)截屏實(shí)現(xiàn)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. Intellij IDEA 2019 最新亂碼問題及解決必殺技(必看篇)2. Android Manifest中meta-data擴(kuò)展元素?cái)?shù)據(jù)的配置與獲取方式3. css3溢出隱藏的方法4. JS繪圖Flot如何實(shí)現(xiàn)動(dòng)態(tài)可刷新曲線圖5. 未來的J2EE主流應(yīng)用框架:對(duì)比Spring和EJB36. Android自定義View實(shí)現(xiàn)掃描效果7. 關(guān)于HTML5的img標(biāo)簽8. ASP.NET MVC獲取多級(jí)類別組合下的產(chǎn)品9. CSS3實(shí)現(xiàn)動(dòng)態(tài)翻牌效果 仿百度貼吧3D翻牌一次動(dòng)畫特效10. JS+css3實(shí)現(xiàn)幻燈片輪播圖
