Hallo zusammen,
mir geht es darum aus den Informationen, die im Dateinamen stehen übers Internet die restlichen Informationen zur Episode zu erhalten.
Da ich selbst Serien über Kodi aufnehme und im Format *.ts bleiben möchte, habe ich leider keine vollständigen Informationen.
Die Dateinamen meiner aufgenommenen Serien sehen so aus:
[Serienname]__[Sender]__[Datum]__[Uhrzeit].ts
Mit diesen 4 Blöcken kann man die Folge ohne epg Daten ermitteln.
Hab das mal über ein Pyton Skript probiert, was auch im groben funktioniert:
Über ein Python Skript bereite ich diese 4 Blöcke auf und suche im Internet auf fernsehserien.de/ nach dem Sendetermin.
Wenn ich den Sendetermin finde, lese ich mir den Episodentitel aus, sowie die Staffelnummer und Episodennummer.
In EMM müsste die Ausgangsformatierung (Datei Schema )der Serien Datei in Inhalt und Reihenfolge angegeben werden, damit gesucht werden kann.
Hier nun der Block aus dem Python Skript, der zur Ermittlung der Informationen von fernsehserien.de/ genutzt wird:
Hierbei werden die oben genannten 4 Blöcke verwendet zur Erkennung und eine festgelegte Anzahl von Seiten, die durchgesucht werden sollen.
for i in range(1, AnzahlSeitendurchsuchen):
if EpisodeGefunden == 0:
InternetSeite = "http://www.fernsehserien.de/" + gesuchteSerie + "/sendetermine/-" + str(i)
# -1 bix -x immer früheres datum
page = requests.get(InternetSeite)
soup = BeautifulSoup(page.content, 'html.parser')
if soup.find("div", {"class": "print-title"}).text == "Fehler 404":
else:
trs = soup.find_all("tr")
for tr in trs:
try:
Datum = tr.find("td", {"class": "sendetermine-datum"}).text
if Datum == gesuchtesDatum:
Sender = tr.find("td", {"class": "sendetermine-sender"}).text
Sender = str(Sender).lower()
if Sender == gesuchterSender:
Uhrzeit = tr.find("td", {"class": "no-smartphone2"}).text
StartZeit, StoppZeit = str(Uhrzeit).split("–")
StoppZeit = str(StoppZeit).replace(":", "")
StartZeit = str(StartZeit).replace(":", "")
if int(gesuchteUhrzeit) > int(StartZeit) and int(gesuchteUhrzeit) < int(StoppZeit):
#Sendetermin gefunden -> Nun EpisodenNummer, Staffelnummer und Episodenname ermitteln
StaffelNummer = tr.find_all("span", {"style": "ccolor:#808080"})
count=0
for span in StaffelNummer:
count = count +1
if count == 1:
Staffel = str(span.text).replace(".", "")
else:
if count == 2:
Episode = span.text
Titel = tr.find("td", {"class": "sendetermine-titel"}).b.text
Titel = Titel.replace(" ", "-")
Dateiname = gesuchteSerie + "__" + Titel + "__" + "s" + Staffel + "e" + Episode + ".ts"
EpisodeGefunden = 1
except:
continue
Alles anzeigen
Ich benutze seit heute EMM und bin ohne Anleitung gut durchgekommen. Ein sehr gutes Tool.
Ich denke so ein Add on könnte für jeden nützlich sein, der selbst Serien aufnimmt und diese nicht händisch nachschlagen möchte.
@DanCooper : Hier der Quellcode. Hat für eine Hand voll Serien funktioniert. Aber war auch mein erstes mal, dass ich eine Internetseite ausgelesen habe ( als kleine Verteidigung )