Heim > Backend-Entwicklung > Python-Tutorial > Wie erhalte ich die Größe und Dauer einer Videodatei in Python?

Wie erhalte ich die Größe und Dauer einer Videodatei in Python?

WBOY
Freigeben: 2023-04-22 22:25:15
nach vorne
2704 Leute haben es durchsucht

1. Vorkenntnisse

Hier werden insgesamt 3 Python-Bibliotheken benötigt, nämlich OS, Pandas und Moviepy.

  • ① Betriebssystem: Wird verwendet, um Dateien und Dateigrößen in einem bestimmten Verzeichnis abzurufen;

  • ② Pandas: Wird verwendet, um die extrahierten Informationen in Excel zu speichern.

  • ③ moviepy: Wird verwendet, um die Dauer in der Videodatei abzurufen.

    Hinweis:
  • pandas und moviepy sind Bibliotheken von Drittanbietern, daher müssen wir sie vorab mit dem folgenden Befehl installieren.
pip install pandas
pip install moviepy
Nach dem Login kopieren

2. Vollständiger Code① Alle Bibliotheken importieren

import os
import pandas as pd
from moviepy.editor import VideoFileClip
Nach dem Login kopieren

② Qualifizierte Dateien im angegebenen Verzeichnis abrufen

useful_dir = []
for i in os.listdir():
    if i.endswith("wmv"):
        useful_dir.append(i)
useful_dir
Nach dem Login kopieren
#🎜 🎜 #Die Ergebnisse sind wie folgt:

③ Benutzerdefinierte Zeitumrechnungsfunktion

def time_convert(seconds):
    M,H = 60,3600
    if seconds < M:
        return f&#39;00:00:0{seconds}&#39; if seconds < 10 else f&#39;00:00:{str(seconds)}&#39;
    elif seconds < H:
        _M = int(seconds//M)
        _S = int(seconds%M)
        return f&#39;00:{f"0{_M}" if _M < 10 else str(_M)}:{f"0{_S}" if _S < 10 else str(_S)}&#39;
    else:
        _H = int(seconds//H)
        _M = int(seconds%H//M)
        _S = int(seconds%H%M)
        return f&#39;{f"0{_H}" if _H < 10 else str(_H)}:{f"0{_M}" if _M < 10 else str(_M)}:{f"0{_S}" if _S < 10 else str(_S)}&#39;
Nach dem Login kopieren

Aufgrund der eingeführten Wie erhalte ich die Größe und Dauer einer Videodatei in Python?-Methode Unten ist die Einheit der Erfassungsdauer Sekunden. Daher müssen die Sekunden in das entsprechende Format „Stunden, Minuten und Sekunden“ umgewandelt werden. Wenn die Zeit eine Minute überschreitet, wird sie in das Format „Minuten:Sekunden“ umgewandelt; wenn sie eine Stunde überschreitet, wird sie in das Format „Stunden:Minuten:Sekunden“ umgewandelt.

④ Dateigröße und -dauer ermitteln

x = []
y = []
for i in useful_dir:
    dir_size = str(round(os.path.getsize(i)/1024/1024,1)) + "M"
    clip = VideoFileClip(i)
    dir_time = time_convert(clip.duration)
    x.append(dir_size)
    y.append(dir_time)
df = pd.DataFrame({"文件大小":x,"文件时长":y})
df
Nach dem Login kopieren

Die Ergebnisse sind wie folgt: VideoFileClip()

⑤ Was Sie erhalten: Die Daten werden in Excel gespeichert.

Das obige ist der detaillierte Inhalt vonWie erhalte ich die Größe und Dauer einer Videodatei in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:yisu.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage