mirror of
https://github.com/ReviveMii/revivetube
synced 2025-04-29 12:39:25 -04:00
fixed a bug that occures if a video is deleted by the folder checker and revivetube.py
This commit is contained in:
parent
27af36b854
commit
11acf24e00
2 changed files with 10 additions and 16 deletions
|
@ -1,47 +1,39 @@
|
||||||
import os
|
import os
|
||||||
import time
|
import time
|
||||||
|
import subprocess
|
||||||
|
|
||||||
def get_folder_size(folder_path):
|
def get_folder_size(folder_path):
|
||||||
"""Berechnet die Gesamtgröße eines Ordners in Bytes."""
|
|
||||||
total_size = 0
|
total_size = 0
|
||||||
for dirpath, dirnames, filenames in os.walk(folder_path):
|
for dirpath, dirnames, filenames in os.walk(folder_path):
|
||||||
for filename in filenames:
|
for filename in filenames:
|
||||||
filepath = os.path.join(dirpath, filename)
|
filepath = os.path.join(dirpath, filename)
|
||||||
# Nur existierende Dateien berücksichtigen
|
|
||||||
if os.path.exists(filepath):
|
if os.path.exists(filepath):
|
||||||
total_size += os.path.getsize(filepath)
|
total_size += os.path.getsize(filepath)
|
||||||
return total_size
|
return total_size
|
||||||
|
|
||||||
def delete_files(folder_path, extensions):
|
def delete_files(folder_path, extensions):
|
||||||
"""Löscht alle Dateien mit den angegebenen Erweiterungen im Ordner."""
|
os.system('sudo pkill -f revivetube.py')
|
||||||
|
process = subprocess.Popen(['sudo', 'nohup', 'python3', 'revivetube.py'])
|
||||||
for dirpath, dirnames, filenames in os.walk(folder_path):
|
for dirpath, dirnames, filenames in os.walk(folder_path):
|
||||||
for filename in filenames:
|
for filename in filenames:
|
||||||
if any(filename.lower().endswith(ext) for ext in extensions):
|
if any(filename.lower().endswith(ext) for ext in extensions):
|
||||||
filepath = os.path.join(dirpath, filename)
|
filepath = os.path.join(dirpath, filename)
|
||||||
try:
|
try:
|
||||||
os.remove(filepath)
|
os.remove(filepath)
|
||||||
print(f"Gelöscht: {filepath}")
|
except:
|
||||||
except Exception as e:
|
print("ERROR")
|
||||||
print(f"Fehler beim Löschen von {filepath}: {e}")
|
|
||||||
|
|
||||||
def monitor_folder(folder_path, size_limit_gb, check_interval):
|
def monitor_folder(folder_path, size_limit_gb, check_interval):
|
||||||
"""Überwacht einen Ordner und löscht bestimmte Dateien, wenn die Größe überschritten wird."""
|
size_limit_bytes = size_limit_gb * 1024 * 1024 * 1024
|
||||||
size_limit_bytes = size_limit_gb * 1024 * 1024 * 1024 # GB in Bytes umrechnen
|
|
||||||
while True:
|
while True:
|
||||||
folder_size = get_folder_size(folder_path)
|
folder_size = get_folder_size(folder_path)
|
||||||
print(f"Ordnergröße: {folder_size / (1024 * 1024 * 1024):.2f} GB")
|
|
||||||
if folder_size > size_limit_bytes:
|
if folder_size > size_limit_bytes:
|
||||||
print("Größenlimit überschritten! Lösche .flv und .mp4 Dateien...")
|
|
||||||
delete_files(folder_path, [".flv", ".mp4"])
|
delete_files(folder_path, [".flv", ".mp4"])
|
||||||
time.sleep(check_interval)
|
time.sleep(check_interval)
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
# Pfad zum Überwachungsordner
|
|
||||||
folder_to_monitor = "./sigma/videos/"
|
folder_to_monitor = "./sigma/videos/"
|
||||||
# Größenlimit in GB
|
size_limit = 7
|
||||||
size_limit = 7 # Geändert auf 7 GB
|
|
||||||
# Intervall in Sekunden
|
|
||||||
interval = 5
|
interval = 5
|
||||||
|
|
||||||
# Überwachung starten
|
monitor_folder(folder_to_monitor, size_limit, interval)
|
||||||
monitor_folder(folder_to_monitor, size_limit, interval)
|
|
||||||
|
|
|
@ -169,6 +169,7 @@ def get_folder_size(path):
|
||||||
total_size += os.path.getsize(file_path)
|
total_size += os.path.getsize(file_path)
|
||||||
return total_size
|
return total_size
|
||||||
|
|
||||||
|
"""
|
||||||
def delete_videos_periodically():
|
def delete_videos_periodically():
|
||||||
while True:
|
while True:
|
||||||
time.sleep(86400)
|
time.sleep(86400)
|
||||||
|
@ -179,6 +180,7 @@ def delete_videos_periodically():
|
||||||
print(f"Deleted: {file_path}")
|
print(f"Deleted: {file_path}")
|
||||||
|
|
||||||
threading.Thread(target=delete_videos_periodically, daemon=True).start()
|
threading.Thread(target=delete_videos_periodically, daemon=True).start()
|
||||||
|
"""
|
||||||
|
|
||||||
INDEX_TEMPLATE = """
|
INDEX_TEMPLATE = """
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
|
|
Loading…
Add table
Reference in a new issue