最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

利用Python編寫簡易的錄制屏幕小工具

 更新時間:2022年08月01日 09:24:41   作者:Sir?老王  
這篇文章主要為大家詳細介紹了如何利用Python語言編寫一個簡易的錄制屏幕小工具,文中的示例代碼講解詳細,感興趣的小伙伴可以動手嘗試一下

由于最近測試需要錄制系統(tǒng)界面的操作過程,因為都是全屏的操作,所以用python做一個簡單的錄屏小工具。

實現(xiàn)過程也是比較簡單,就是通過對屏幕操作進行不斷的截圖,最后將截圖合成一個操作視頻的過程。由于我們只是做簡單的截屏功能,并沒有加入音頻效果。

1、準備

開始之前我們還是按照以往的方式介紹一下使用到的第三方的python模塊。

from?PIL?import?ImageGrab

import?numpy?as?np

import?cv2

import?datetime

from?pynput?import?keyboard

import?threading

from?loguru?import?logger

import?time

由于實現(xiàn)過程比較少,這里我們不再創(chuàng)建標準的class實現(xiàn),直接在.py文件寫相關的函數(shù)來實現(xiàn)。

2、代碼

實現(xiàn)過程主要是通過兩個函數(shù)來實現(xiàn)的,一個是實現(xiàn)具體的屏幕截圖操作,并且將其寫入視頻。另一個則是用來監(jiān)聽鍵盤的輸入,若是按下esc鍵時則退出當前的錄制操作。

初始化一個變量作為停止標志。

is_running?=?True

創(chuàng)建錄制過程生成函數(shù)generate_video,用以生成錄制視頻。

def?generate_video():
????'''
????生成錄制視頻函數(shù)
????:return:
????'''
????file_name?=?datetime.datetime.now().strftime('%Y-%m-%d?%H-%M-%S')
????screen?=?ImageGrab.grab()
????width,?height?=?screen.size
????fourcc?=?cv2.VideoWriter_fourcc(*'XVID')
????video?=?cv2.VideoWriter('%s.avi'?%?file_name,?fourcc,?20,?(width,?height))
????for?n?in?range(3):
????????logger.debug(str(3?-?n)?+?'秒后開始錄制!')
????????time.sleep(1)
????while?True:
????????im1?=?ImageGrab.grab()
????????im2?=?cv2.cvtColor(np.array(im1),?cv2.COLOR_RGB2BGR)
????????video.write(im2)
????????if?is_running?is?False:
????????????logger.debug('屏幕錄制已經(jīng)結束!')
????????????break
????video.release()

創(chuàng)建鍵盤監(jiān)聽函數(shù)press_keyboard,監(jiān)聽輸入,若是按下esc鍵則改變運行狀態(tài)。

is_running=False
def?press_keyboard(key):
????'''
????鍵盤監(jiān)聽函數(shù)
????:param?key:
????:return:
????'''
????global?is_running
????if?key?==?keyboard.Key.esc:
????????logger.debug('ESC已經(jīng)被按下,馬上結束錄制!')
????????is_running?=?False
????????return?False

執(zhí)行主函數(shù)main,啟動則執(zhí)行屏幕錄制。

if?__name__?==?'__main__':
????thread_?=?threading.Thread(target=generate_video)
????thread_.start()
????logger.debug('?開始進入視頻錄制!')
????with?keyboard.Listener(on_press=press_keyboard)?as?listener:
????????listener.join()

最后,使用pyinstaller將其打包成exe的可執(zhí)行應用,使用時直接雙擊打開即可開始錄制屏幕的操作過程。

pyinstaller?-i?.\video.ico?-Fw?.\test2.py

至此,錄制屏幕小工具就大功告成了。

到此這篇關于利用Python編寫簡易的錄制屏幕小工具的文章就介紹到這了,更多相關Python錄制屏幕工具內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • python之Django自動化資產(chǎn)掃描的實現(xiàn)

    python之Django自動化資產(chǎn)掃描的實現(xiàn)

    這篇文章主要介紹了python之Django自動化資產(chǎn)掃描的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-04-04
  • numpy中的delete刪除數(shù)組整行和整列的實例

    numpy中的delete刪除數(shù)組整行和整列的實例

    今天小編就為大家分享一篇numpy中的delete刪除數(shù)組整行和整列的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • Python正則表達式以及常用匹配實例

    Python正則表達式以及常用匹配實例

    在處理字符串時,經(jīng)常會遇到查找符合某些復雜規(guī)則字符串的需求,正則表達式就是用于描述這些規(guī)則的工具,下面這篇文章主要給大家介紹了關于Python正則表達式以及常用匹配的相關資料,需要的朋友可以參考下
    2022-07-07
  • 解決pytorch 數(shù)據(jù)類型報錯的問題

    解決pytorch 數(shù)據(jù)類型報錯的問題

    這篇文章主要介紹了解決pytorch 數(shù)據(jù)類型報錯的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • 在python中讀取和寫入CSV文件詳情

    在python中讀取和寫入CSV文件詳情

    這篇文章主要介紹了在python中讀取和寫入CSV文件詳情,CSV即逗號分隔值,一種以逗號分隔按行存儲的文本文件,所有的值都表現(xiàn)為字符串類型
    2022-06-06
  • Python Opencv實戰(zhàn)之文字檢測OCR

    Python Opencv實戰(zhàn)之文字檢測OCR

    這篇文章主要為大家詳細介紹了如何利用Python Opencv實現(xiàn)文字檢測OCR功能,文中的示例代碼講解詳細,具有一定的借鑒價值,需要的可以參考一下
    2022-08-08
  • python結合API實現(xiàn)即時天氣信息

    python結合API實現(xiàn)即時天氣信息

    這篇文章主要介紹了python結合API實現(xiàn)即時天氣信息的代碼,非常的實用,有需要的小伙伴可以參考下。
    2016-01-01
  • Python構建一個文檔掃描器的實現(xiàn)

    Python構建一個文檔掃描器的實現(xiàn)

    本文主要介紹了Python構建一個文檔掃描器的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-03-03
  • python將dict中的unicode打印成中文實例

    python將dict中的unicode打印成中文實例

    這篇文章主要介紹了python將dict中的unicode打印成中文實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-05-05
  • Pycharm Available Package無法顯示/安裝包的問題Error Loading Package List解決

    Pycharm Available Package無法顯示/安裝包的問題Error Loading Package Li

    這篇文章主要介紹了Pycharm Available Package無法顯示/安裝包的問題Error Loading Package List解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-09-09

最新評論

宜良县| 开封县| 昌乐县| 濮阳县| 峡江县| 赫章县| 盐边县| 汉沽区| 华坪县| 玛多县| 顺平县| 江永县| 肇州县| 象山县| 边坝县| 龙口市| 南康市| 徐汇区| 桑日县| 启东市| 利津县| 阳山县| 阳新县| 秭归县| 秦皇岛市| 苗栗市| 凤城市| 石景山区| 岑巩县| 蕉岭县| 呼和浩特市| 县级市| 新密市| 白玉县| 浦城县| 吉水县| 南阳市| 永清县| 织金县| 上栗县| 应城市|