Scrapen von Episoden-Specials funktioniert nicht

  • Moin zusammen,
    ich habe grad ein Problem beim Scrapen von "Specials", das ich nicht so ganz nachvollziehen kann.


    Beim Scrapen werden die meisten Special-Episoden nicht erkannt.


    Beispiel: S00E12 - Top Gear
    Es wird ein Poster gefunden, ansonsten aber nichts. Keine Beschreibung, Titel, Akteure etc.
    Es wird keine Verknüpfung zu TVDB, TMDB und IMDB angelegt.

    Hier die Direktlinks zu der Episode:
    https://thetvdb.com/series/top-gear/episodes/331957
    https://www.themoviedb.org/tv/45-top-gear/season/0/episode/12
    https://www.imdb.com/title/tt1070690/


    Gehe ich nun aber hin und wähle "Episode wechseln", dann dauert es etwa
    3-5 Minuten, bis das Fenster zur Episodenwahl sich öffnet, aber ich kann
    dort dann Episode 12 aus den Specials auswählen.
    Nun wird die Episode richtig zugeordnet samt Titel, Handlung etc.
    Vernüpfung zu TVDB und IMDB, aber nicht zu TMDB (obwohl dort vorhanden).
    Allerdings wird keine Bewertung gespeichert, obwohl bei IMDB vorhanden (und aktiviert)
    Auch das manuelle Scrapen der Bewertuung ändert daran nichts.
    Bei Specials wird keine Bewertung von IMDB geladen, bei allen regulären Folgen schon.


    Andere Specials werden hingegen bereits beim ersten Scrapen gefunden.
    Beispiel: S00E68 - Top Gear
    Auch hier kann keine Bewertung geladen werden.
    Verknüpfung zu TVDB, TMDB und IMDB vorhanden.


    Kann ich hier einstellungsseitig irgendwas verändern, damit das klappt?


    Das ganze tritt mit der 1.5er aus diesem Thread auf, als auch mit der Version vom 26sten April von hier:
    drive.google.com/drive/folders/0B5s_nJD0ZJ75S3VudGhoSkRVWG8

    Top Gear (TheTVDB ID 74608) ist jetzt nur ein Beispiel.
    Bei Mr Bean (TheTVDB ID 76316) bspw ebenso.


    Gruß
    Thomas

  • Wenn du auf Episode wechseln klickst wird im Hintergrund die komplette Serie auf allen aktivierten Scrapern "gescrapt", damit man eine Auswahlliste erhällt. Wenn du IMDb aktiviert hast dauert das Scrapen sehr lange, da pro Episode immer eine komplette Seite auf IMDb geparst werden muss. Wenn TMDb aktiviert ist muss ebenfalls jede Episode einzeln abgefragt werde, was zwar theoretisch sehr schnell geht, aber aufgrund des API Limits von 30 Abfagen in 10 Sekunden und anschliessender Pause von 30 Sekunden (soweit ich mich erinnern kann) halt auch länger dauert, je mehr Episoden eine Serie hat. TVDb liefert als einzige API eine komplette Episodenliste in ca. 1-2 Sekunden.

    Nach dem Scrapen wird versucht, aus den Infos aller Scraper eine "Liste der bekannten Episoden" zu erstellen. Nehmen wir an, du hast folgende Reihenfolge bei den Scrapern eingestellt: TVDb, TMDb, IMDb:
    Das TVDb der erste Scraper ist werden erstmal alle Episoden indexiert mit all ihren Werten für AiredDate, EpisodeNumber, SeasonNumber, EpisodeAbsoluteNumber, EpisodeCombinedNumber, SeasonCombinedNumber, EpisodeDVDNumber und SeasonDVDNumber. Die UniqueIDs (TVDb führt neben der eigenen Nummer meist auch noch die IMDb ID; TMDb fürt TVDb und IMDb) spielen hierbei keine Rolle.
    Der zweite Scraper TMDb liefert ebenfalls eine Episodenliste, jedoch nur mit AiredDate, EpisodeNumber und SeasonNumber. Ember prüft nun, ob TMDb eine Season/Episode-Kombination führt, die noch nicht in der Liste ist und fügt diese gegebenenfalls der Liste hinzu.
    Das selbe wird dann mit den den Daten vom IMDb Scraper gemacht.

    Nun hat man eine Liste mit "bekannten" Staffel-/Episoden-Nummern.

    Im Fall deiner Episode bedeutet das nun:
    Du hast sie mit S00E12 benannt, d.h. logischerweise Ember nimmt von jedem Scraper die Daten, die unter Staffel "0" (Specials) und Episode "12" gelistet sind und fügt diese den Einstellungen entsprechend zusammen. Da IMDb die Episode aber unter Staffel "9" Episode "8" führt liefert dieser Scraper natürlich keine Daten für die "geschte" Episode. Da TVDb und TMDb aber die IMDb ID als Info mitbringen wird die IMDb ID gespeichert. D.h. nach diesem ersten Scrapevorgang ist die IMDb ID bekannt.

    Wenn du nun die Episode rescrapst wird erkennt der IMDb Scraper, dass die IMDb ID schon bekannt ist und kann die Episode direkt scrapen. Würde hier die IMDb noch fehlen würde der Scraper auf IMDb wieder nach S00E12 suchen und nix finden, da es diese Episode dort so nicht gibt.

    Das selbe Problem kann bestehen, wenn du eine einzelne Episode zum ersten mal scrapst (was beim DB Update ja im Normalfall automatisch passiert). Je nach Reihenfolge der Scraper ist die IMDb ID bekannt oder nicht und entsprechend wird die Bewertung von IMDb geholt oder nicht. Wenn du TVDB => TMDb => IMDb nutzt sollte die ID von einem der beiden Scraper bekannt sein. Wenn du IMDb => TVDb => TMDb nutzt dann nicht.

    Ich könnte das Problem in Ember 1.5.x wohl einschränken, aber nicht komplett beheben. In Ember 2.0 werden die Scrapevorgänge komplett anderst ablaufen, dort sollte das Problem dann fast komplett behoben sein.


    Fazit:
    Entweder mehrmalig scrapen oder die Bewertung manuell eintragen, wenn keine gefunden wird.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!