Benötige Hilfe beim Script
Verfasst: Freitag 24. Januar 2020, 22:06
Hallo,
ich habe ein Webradio und möchte ein paar Einstellungen an dem Script machen. Haber aber bisher keine Ahnung von Python 2.
Das Script liest 3 Ordner aus die zu unterschiedlichen Zeiten laufen. Einmal von 10-0 und einmal von 0 - 10.
Dies möchte ich ändern, daher benötige ich Hilfe.
0 – 6 > NightRotation
6 – 12 > MiddayRotation
12 – 18 > DayRotation
18 – 24 > AbendRotation
So sollten die Zeiten aufgeteilt werden.
Es wäre echt Super, wenn Ihr mir dabei Helfen könnt
Mit freundlichen Grüßen
Kometrix
ich habe ein Webradio und möchte ein paar Einstellungen an dem Script machen. Haber aber bisher keine Ahnung von Python 2.
Das Script liest 3 Ordner aus die zu unterschiedlichen Zeiten laufen. Einmal von 10-0 und einmal von 0 - 10.
Dies möchte ich ändern, daher benötige ich Hilfe.
0 – 6 > NightRotation
6 – 12 > MiddayRotation
12 – 18 > DayRotation
18 – 24 > AbendRotation
So sollten die Zeiten aufgeteilt werden.
Code: Alles auswählen
#!/usr/bin/env python
heavyRotationPercentage = 1.0 / 2.0
import os
import random
import pickle
import datetime
directory = os.path.dirname(os.path.abspath(__file__))
heavyRotationDir = os.path.join(directory, "HeavyRotation")
normalRotationDir = os.path.join(directory, "NormalRotation")
oldRotationDir = os.path.join(directory, "OldRotation")
jinglesDir = os.path.join(directory, "Jingles")
statusFile = os.path.join(directory, "status.txt")
currentHour = datetime.datetime.now().hour
status = [('','')]*8
if os.path.isfile(statusFile):
with open(statusFile, "rb") as f:
status = pickle.load(f)
lastFiles = [i[0] for i in status]
fileListFilter = lambda fileList: [fileName for fileName in fileList if
fileName not in lastFiles and fileName[-4:] == ".mp3"]
choosenFileDir = False
choosenFileList = False
if status[-1][1]!=jinglesDir:
#Letzte Track war kein Jingle
choosenFileDir = jinglesDir
choosenFileList = fileListFilter(os.listdir(jinglesDir))
if currentHour >= 10 and choosenFileDir == False:
#Von 10:00 bis 24:00 aus der normalen / Heavy Rotation waehlen
filesInHeavyRotation = fileListFilter(os.listdir(heavyRotationDir))
filesInNormalRotation = fileListFilter(os.listdir(normalRotationDir))
if random.random() <= heavyRotationPercentage and len(filesInHeavyRotation) > 0:
choosenFileDir = heavyRotationDir
choosenFileList = filesInHeavyRotation
elif len(filesInNormalRotation) > 0:
choosenFileDir = normalRotationDir
choosenFileList = filesInNormalRotation
if choosenFileDir == False:
# Von 00:00 bis 10:00 (oder wenn nichts anderes gefunden wurde) aus der alten Rotation waehlen
choosenFileDir = oldRotationDir
choosenFileList = fileListFilter(os.listdir(oldRotationDir))
choosenFile = random.choice(choosenFileList)
with open(statusFile, "wb") as f:
status.append((choosenFile, choosenFileDir))
pickle.dump(status[1:],f)
print os.path.join(choosenFileDir, choosenFile)
Es wäre echt Super, wenn Ihr mir dabei Helfen könnt

Mit freundlichen Grüßen
Kometrix