欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

利用Python3編寫一個電腦錄屏神器

 更新時間:2022年08月19日 08:16:04   作者:Carl_奕然  
這篇文章主要為大家詳細介紹了如何利用Python3編寫一個簡易的電腦錄屏神器,文中的示例代碼講解詳細,感興趣的小伙伴可以動手嘗試一下

1、引言

女神:魚哥,忙嗎?

小魚:嗯嗯, 忙, 哦不 , 不忙不忙。

女神:魚哥,那能不能幫我個忙?

小魚:這沒問題啊這。

女神:你是認真說的嗎?

小魚:認真的啊,這還能不認真嗎。

女神:說好了,不準反悔。

小魚:我魚愿意為你,犧牲睡覺的時間,做事情。

女神:魚哥,你還帥哦。

小魚:不要羨慕魚哥, 魚哥上學從來沒在一班呆過。

女神:嗯嗯~ ~ 太哇塞了。

小魚:說吧, 你有啥事需要我,該不會是…?

女神:想什么呢? 我我想錄制一個視頻,但是不知道用什么軟件,能幫忙找一個嗎?

小魚:就這啊… 我還以為啥難事呢?

女神:那你的意思,可以幫忙了。

小魚:必須的。

2、代碼實戰(zhàn)

2.1 編寫思路

編寫視頻錄制器, 我們需要以下步驟:

1、初始化變量,默認為True時,就是錄制;

2、創(chuàng)建錄制函數(shù),用于進行視頻錄制;

3、創(chuàng)建鍵盤監(jiān)聽函數(shù),如果按esc按鍵,就停止錄制;

有了以上思路,我們就進行代碼編寫。

2.2 代碼示例

代碼示例

# -*- coding:utf-8 -*-
# @Time   : 2022-08-10
# @Author : Carl_DJ

'''
制作視頻錄制器
實現(xiàn)功能:
1、倒計時開始進行錄制
2、點擊 鍵盤的 esc按鍵,就停止錄制
3、打包成.exe, 直接點擊就可以運行
'''
import cv2
from PIL import ImageGrab
import numpy as np
import datetime
from pynput import keyboard
import threading
from loguru import logger
import  time
import  os
# 初始化變量
is_running = True

'#創(chuàng)建錄制過程生成的generate_video,用于生成錄制視頻'

def generate_video():
    '''
    生成錄制視頻
    :return:
    '''
    #當前時間戳為文件名字
    start_time = datetime.datetime.now().strftime('%Y-%m-%d %H%M%S')
    file_name = (start_time + '錄制視頻')
    # file_name= input("輸入錄制文件的名稱")
    screen = ImageGrab.grab()
    width,height = screen.size
    fource = cv2.VideoWriter_fourcc(*'XVID')
    video = cv2.VideoWriter('%s.avi'% file_name,fource,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_RGBA2RGB)
        video.write(im2)
        if is_running is False:
            logger.debug('屏幕錄制結束')
            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鍵,錄制結束')
        is_running = False
        return False

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

3、總結

看到這里,今天的分享差不多就該結束了。

今天主要通過pynupt、PIL、numpy 庫來介紹視頻的錄制及觸發(fā)鍵盤的按鍵后,結束錄制。

整體還算簡單,但是針對初學者來說,還是有一點點的難度。

同時, 我也把代碼封裝成.exe應用,雙擊即可直接運行,

這里也說一下:

1、生成文件地址,與exe應用統(tǒng)計目錄

2、生成文件名稱:日期+時間戳+錄制視頻.avi

3、結束按鍵:esc

到此這篇關于利用Python3編寫一個電腦錄屏神器的文章就介紹到這了,更多相關Python電腦錄屏內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • python模擬登錄百度代碼分享(獲取百度貼吧等級)

    python模擬登錄百度代碼分享(獲取百度貼吧等級)

    python模擬登錄百度,實現(xiàn)了登錄并讀取百度關注貼吧列表,百度登錄還是有點麻煩的,由于用的ssl,所以要先獲取token,然后再登錄,這個用finddle2分析下,還是比較好解決的
    2013-12-12
  • pandas初學者容易犯的六個錯誤總結

    pandas初學者容易犯的六個錯誤總結

    Pandas是Python的一個數(shù)據(jù)分析包,該工具為解決數(shù)據(jù)分析任務而創(chuàng)建,Pandas納入大量庫和標準數(shù)據(jù)模型,提供高效的操作數(shù)據(jù)集所需的工具,這篇文章主要給大家介紹了總結介紹了pandas初學者容易犯的六個錯誤,需要的朋友可以參考下
    2021-10-10
  • Python數(shù)據(jù)獲取實現(xiàn)圖片數(shù)據(jù)提取

    Python數(shù)據(jù)獲取實現(xiàn)圖片數(shù)據(jù)提取

    本文主要介紹了Python數(shù)據(jù)獲取實現(xiàn)圖片數(shù)據(jù)提取,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-05-05
  • 如何獲取DataFrame值的索引以及其他

    如何獲取DataFrame值的索引以及其他

    這篇文章主要介紹了如何獲取DataFrame值的索引以及其他問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • anaconda3:conda not found報錯問題解決

    anaconda3:conda not found報錯問題解決

    這篇文章主要給大家介紹了關于anaconda3:conda not found報錯問題解決的相關資料,Anaconda指的是一個開源的Python發(fā)行版本,其包含了conda、Python等180多個科學包及其依賴項,需要的朋友可以參考下
    2023-10-10
  • python創(chuàng)建n行m列數(shù)組示例

    python創(chuàng)建n行m列數(shù)組示例

    今天小編就為大家分享一篇python創(chuàng)建n行m列數(shù)組示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • Python利用隨機函數(shù)生成變化圖形詳解

    Python利用隨機函數(shù)生成變化圖形詳解

    這篇文章主要介紹了如何在Python中利用隨機函數(shù)生成變化的圖形,文中的示例代碼講解詳細,對我們學習有一定吧參考價值,需要的可以了解一下
    2022-04-04
  • Django 拆分model和view的實現(xiàn)方法

    Django 拆分model和view的實現(xiàn)方法

    今天小編就為大家分享一篇Django 拆分model和view的實現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • Python中的星號*還能這么用你知道嗎

    Python中的星號*還能這么用你知道嗎

    這篇文章主要為大家詳細介紹了Python中的星號*用法的相關資料,文中的示例代碼講解詳細,具有一定的學習價值,感興趣的小伙伴可以跟隨小編一起了解一下
    2023-06-06
  • 深入探究Python中的迭代器和生成器

    深入探究Python中的迭代器和生成器

    迭代器(Iterators)和生成器(Generators)是?Python?中最強大的功能之一,但也是新手最容易混淆的部分,本文將深入探討這兩種概念,以及它們在?Python?編程中的實際應用,需要的朋友可以參考下
    2023-06-06

最新評論