OFDb

Darsteller, Regie etc. aus der IMDb herauskopieren

Begonnen von Karm, 9 April 2025, 19:45:13

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 1 Gast betrachten dieses Thema.

Kayfabe

26 Juni 2025, 19:40:32 #60 Letzte Bearbeitung: 11 Juli 2025, 08:38:21 von mali Grund: "nicht im Abspann" herausgenommen
Zitat von: TakaTukaLand am 26 Juni 2025, 18:13:19Hier wäre dann die Version mit der etwas größeren Ausschlussliste:

Obsolet

Aktuelle Version am Ende des Threads

Bitte prüfen, falls etwas zu viel herausgefiltert wird oder zusätzliche (auch anderssprachige) Filter noch fehlen.

"nicht im abspann" ist doch die deutsche Version von "uncredited"? Der gehört da dann wohl nicht rein.
Ich meine auch, dass "narrator" für on-screen-Auftritte verwendet wird - wäre dann auch zu streichen.
"Mit nichts als Phantasie erschufen wir unsere Welt aus dem Nichts."

Phantastik

Zitat von: Kayfabe am 26 Juni 2025, 19:40:32Ich meine auch, dass "narrator" für on-screen-Auftritte verwendet wird - wäre dann auch zu streichen.

Im Regelfalle ist ein Erzähler bei IMDb als "Narrator (voice)" gelistet. Jedoch manchmal auch ohne "voice". Ein Erzähler inkl. Auftritt im Film steht bei IMDb als "Host" (seltener "Presenter") drin.

Phantastik

TakaTukaLand

Zitat von: Kayfabe am 26 Juni 2025, 19:40:32"nicht im abspann" ist doch die deutsche Version von "uncredited"? Der gehört da dann wohl nicht rein.
Danke, hab ich raus genommen :respect:

Zitat von: Kayfabe am 26 Juni 2025, 19:40:32Ich meine auch, dass "narrator" für on-screen-Auftritte verwendet wird - wäre dann auch zu streichen.
Zitat von: Phantastik am 26 Juni 2025, 19:52:15Im Regelfalle ist ein Erzähler bei IMDb als "Narrator (voice)" gelistet. Jedoch manchmal auch ohne "voice". Ein Erzähler inkl. Auftritt im Film steht bei IMDb als "Host" (seltener "Presenter") drin.
Da sehe ich auch das Problem, dass "narrator" manchmal raus muss und manchmal nicht, weil die IMDb da nicht zu 100% einheitlich ist. Deswegen gerne ausgiebig testen, damit wir besser einschätzen können, ob das ein Ausschlusskriterium sein soll oder es einen Hinweis geben muss, dass "narrator" immer einer manuellen Einzelfallprüfung bedarf.
Bzw. gibt es mehr Einzelfälle, in denen ein:e "narrator" fälschlicherweise oder richtigerweise herausgefiltert wird?

mali

Hat jemand Beispiel-Seiten zur Hand (IMDb), wo Narrator in der einen oder anderen Form auftaucht? Ich finde gerade keine :-)

Black Smurf

Zitat von: mali am  3 Juli 2025, 11:09:06Hat jemand Beispiel-Seiten zur Hand (IMDb), wo Narrator in der einen oder anderen Form auftaucht? Ich finde gerade keine :-)

https://www.imdb.com/de/title/tt0795176/
Through the darkness of future's past, the magician longs to see. One chants out between two worlds "Fire... walk with me."

Phantastik

Zitat von: mali am  3 Juli 2025, 11:09:06Hat jemand Beispiel-Seiten zur Hand (IMDb), wo Narrator in der einen oder anderen Form auftaucht? Ich finde gerade keine :-)


https://www.imdb.com/name/nm0041003/?showAllCredits=true

Erzähler ohne Auftritt

Self - Narrator
Self (voice)
Self - Narrator (voice)

Erzähler inkl. Auftritt

Self - Presenter
Self - Host

Auch Mischformen darunter:

Self - Presenter / Self - Host / Self - Narrator

--

Phantastik

mali

Danke euch beiden  :respect:


@Phantastik
Auf der als Beispiel gezeigten Seite funktioniert das Script leider nicht, da keine übliche Cast List vorhanden ist.



mali

3 Juli 2025, 13:18:38 #67 Letzte Bearbeitung: 11 Juli 2025, 08:38:57 von mali
Eine neue Variante/Erweiterung zeigt nun die ausgefilterten mit an. Und fügt einen "Kopieren" Button hinzu, der die nicht ausgefilterten direkt in die Zwischenablage kopiert.

Ob man nun dieses oder die vorherige Variante bevorzugt, ist wohl geschmackssache. Ein paar "nur Maus" User kannten oder kamen mit STRG+A STRG+C STRG+V nicht so zurecht und monierten bei überlangen Cast-Listen, dass das markieren mit der Maus umständlich war :-)

Obsolet

Aktuelle Version am Ende des Threads



Phantastik

Zitat von: mali am  3 Juli 2025, 13:11:21Danke euch beiden  :respect:


@Phantastik
Auf der als Beispiel gezeigten Seite funktioniert das Script leider nicht, da keine übliche Cast List vorhanden ist.

Das ist lediglich ein Personenprofil bei IMDb. Um das Script zu testen, dies dann jeweils nach Klick auf den entsprechenen Film bzw. Serie.

Phantastik

Phantastik

Zitat von: mali am  3 Juli 2025, 13:18:38'nicht im abspann',

Da ist es wohl von Vorteil nur die englischsprachige Version des IMDb zu verwenden ;-).

Phantastik

mali

Stand noch oben in der User-Erstellten Liste  :mr.green:


Habe es mal in beiden Postings editiert.

TakaTukaLand

Hier zeigt sich das narrator-Problem ziemlich gut:
https://www.imdb.com/de/title/tt0083452/fullcredits/?ref_=tt_ov_2#cast

David Attenborough ist dabei z.B. in Staffel 31 "Presenter", wird aber trotzdem herausgefiltert, weil er ansonsten meist als "Self - Narrator" geführt wird.

Am Beispiel Brian Unger ist ganz gut zu sehen, dass bei Serien die Infos auf der All Cast-Ansicht oft nicht vollständig sind. Erst in den Episoden-Details wird er z.B. auch "Narrator (Synchronisation)" (Staffel 33) geführt, während das Stichwort "Synchronisation" in der All Cast-Ansicht nicht vorkommt.
Das ist ein generelles Problem bei Serien in der IMDb - abgesehen von den sich in diesem Beispiel sowieso überlappenden Filterbegriffen 'synchronisation' und 'narrator'.

Kannst du da in die Episoden-Strukturen eindringen oder wird das dann zu komplex, mali?

mali

Zitat von: TakaTukaLand am  3 Juli 2025, 22:49:57Kannst du da in die Episoden-Strukturen eindringen oder wird das dann zu komplex, mali?

Inwiefern eindringen?

Wenn man jetzt einzelne Episoden aufruft (Fullcredits der Episode), dann funktioniert das Bookmarklet ja bereits.


TakaTukaLand

Genau das wollte ich mit meiner Frage nach dem "eindringen" gerne umgehen. Also nicht jede Episode anklicken zu müssen, um einen vollständig gefilterten Cast zu erhalten. Sondern auf der All Cast-Ansicht der Serie das Bookmarklet anwenden, bei dem die detaillierteren Angaben aus den Credits der Episoden bereits mit einfließen bzw. herausgefiltert werden.

Aber das ist vermutlich Wunschdenken? :mr.green:

Immerhin kann man ja jetzt bei nicht allzu langen Serien tatsächlich mal alle Episoden durchgehen und dank deines Zauberscripts mit nur einem Klick sofort angezeigt bekommen, ob Filterbegriffe vorkommen, die in der Full Cast-Ansicht nicht aufgeführt wurden.

Phantastik

Zitat von: TakaTukaLand am  3 Juli 2025, 22:49:57Hier zeigt sich das narrator-Problem ziemlich gut:
https://www.imdb.com/de/title/tt0083452/fullcredits/?ref_=tt_ov_2#cast

[...]

Das wäre ein Beispiel, da jeden Cast einzeln gegebenenfalls auch via Personeneintrag auf "voice" zu prüfen und rauszukopieren anstatt ein Script rüberlaufen zu lassen.

Phantastik

mali

4 Juli 2025, 09:15:02 #75 Letzte Bearbeitung: 6 Juli 2025, 10:45:54 von mali
Zitat von: TakaTukaLand am  4 Juli 2025, 00:30:54Aber das ist vermutlich Wunschdenken? :mr.green:

Technisch sicher machbar, aber eher was für ein AddOn als für ein Bookmarklet. Letztendlich müsste man ja alle Episoden aller Staffeln einzeln öffnen, Cast herauskopieren und dann geht das große zusammenkopieren/abgleichen los. Gibt sicher auch Fälle, wo in Endlos-Serien der gleiche Darsteller auch mal Archiv-, Sprech- und darstellende Rollen hatte. Etc. etc. Die Logik dahinter das wasserdicht zusammenzukopieren und auszufiltern klingt ein wenig nach Passierschein A38  :mr.green: und mit großer Chance ändert die IMDb dann 2 Monate später eh wieder die Seitenstruktur  :smiley:

Letztendlich ist das Bookmarklet nur eine recht gute Arbeitserleichterung für vollständige Castlisten, aber das Denken und prüfen bleibt immer noch beim Einträger. Zumal es eh nur so gut funktioniert, wie die Angaben in der IMDb richtig und vollständig sind.


TakaTukaLand

Ich wollte zumindest mal gefragt haben :hideugly:

Zitat von: mali am  4 Juli 2025, 09:15:02Letztendlich ist das Bookmarklet nur eine recht gute Arbeitserleichterung für vollständige Castlisten
Absolut, das ist auch ohne Passierschein A38 und Eierlegende Wollmilchsau-Feature eine immense Erleichterung! Danke dir :animerespekt:

mali

Zitat von: TakaTukaLand am  4 Juli 2025, 22:23:58Ich wollte zumindest mal gefragt haben :hideugly:

Macht auch immer Sinn, so kam es ja auch zu der Idee mit dem Filter :-)

mali

6 Juli 2025, 19:50:46 #78 Letzte Bearbeitung: Gestern um 09:01:34 von mali
Kosmetik und Zahlen

javascript:(() => {
  const unwantedRoles = [
    'narrator',
    'voice',
    'scenes deleted',
    'archive footage',
    'stock footage',
    'rumored',
    'credit only',
    'archivtonaufnahmen',
    'archivfilmmaterial',
    'nur stimme',
    'gelöschte szenen',
    'nur genannt',
    'synchronisation',
    'sprecher',
    'sprecherin',
    'unbestätigt'
  ];

  function normalize(text) {
    return text.toLowerCase().replace(/\s+/g, ' ').trim();
  }

  function extractCast(selector, wanted = true) {
    const section = document.querySelector(selector);
    if (!section) return [];
    const items = section.querySelectorAll('li.full-credits-page-list-item');
    const results = [];

    for (const li of items) {
      const nameEl = li.querySelector('a.ipc-link.name-credits--title-text-big');
      const fullText = li.innerText;
      const normalizedText = normalize(fullText);
      const matchedRole = unwantedRoles.find(role => normalizedText.includes(role));

      if (nameEl) {
        if (wanted && !matchedRole) {
          results.push(nameEl.textContent.trim());
        } else if (!wanted && matchedRole) {
          results.push(nameEl.textContent.trim() + ' (' + matchedRole + ')');
        }
      }
    }

    return results;
  }

  const mainCast = extractCast('[data-testid="sub-section-cast"]');
  const restCast = extractCast('[data-testid="second-sub-section-cast"]');
  const cast = [...mainCast, ...restCast];

  const excludedMain = extractCast('[data-testid="sub-section-cast"]', false);
  const excludedRest = extractCast('[data-testid="second-sub-section-cast"]', false);
  const excluded = [...excludedMain, ...excludedRest];

  if (cast.length === 0) {
    alert('Keine passenden Schauspielernamen gefunden.');
    return;
  }

  const result = cast.join('\n');
  const excludedHtml = excluded.map(e => '<div style="color:red">' + e + '</div>').join('');
  const castHtml = cast.map(name => '<div>' + name + '</div>').join('');

  const popup = window.open('', '', 'width=1000,height=800');
  popup.document.write(`
    <html>
    <head><title>IMDb Cast Liste</title></head>
    <body style="font-family:sans-serif;font-size:14px;">
      <div style="display:flex;gap:40px;align-items:flex-start;">
        <div style="flex:1;white-space:pre-wrap;">
          <div style="font-weight:bold;margin-bottom:5px;">Haupt-Cast:</div>
          ${castHtml}
        </div>
        <div style="flex:1;white-space:pre-wrap;">
          <div style="color:red; font-weight:bold; margin-bottom:5px;">Ausgefilterte Rollen:</div>
          ${excludedHtml}
          <div style="margin-top:20px;font-weight:bold;color:#444;">
            <div>Anzahl Haupt-Cast: ${cast.length}</div>
            <div>Anzahl ausgefiltert: ${excluded.length}</div>
            <div>Gesamtzahl Einträge: ${cast.length + excluded.length}</div>
          </div>
          <button onclick="copyToClipboard()" style="margin-top:20px;padding:16px 16px;font-size:14px;cursor:pointer;">Haupt-Cast in die Zwischenablage kopieren</button>
        </div>
      </div>
      <script>
        function copyToClipboard() {
          navigator.clipboard.writeText(${JSON.stringify(result)})
            .catch(err => console.error('Clipboard error:', err));
        }
      </script>
    </body>
    </html>
  `);
})();


TakaTukaLand

Filterliste ergänzt um:
    'sprecher'
    'sprecherin'

mali

9 Juli 2025, 12:14:40 #80 Letzte Bearbeitung: 9 Juli 2025, 12:16:31 von mali
Zitat von: TakaTukaLand am  8 Juli 2025, 19:37:42Filterliste ergänzt um:
    'sprecher'
    'sprecherin'


Am besten immer irgendwo eine komplette Referenz-Liste pflegen. Sonst weiß nach kurzer Zeit niemand mehr, was alles zusammengehört bzw. was der aktuelle Stand ist.

In das letzte Script mal mit rein editiert

TakaTukaLand


mali

10 Juli 2025, 11:05:41 #82 Letzte Bearbeitung: 10 Juli 2025, 12:18:17 von mali
Zitat von: TakaTukaLand am 10 Juli 2025, 00:46:23Für den aktuellen Stand hatte ich diesen geschlossenen Thread im KF angelegt:
https://www.gemeinschaftsforum.com/forum/index.php/topic,263263.0.html

Oha  :mr.green: 

Ja gut, da ins KF gucke ich vielleicht alle 1-2 Monate mal rein ;-) Sprich: Hatte ich noch gar nicht gesehen  :engel:


Schön :respect: So ein klein wenig läuft man dann aber auch Gefahr, das unterschiedliche Status (plural :) ) an unterschiedlichen Stellen gepflegt werden.

TakaTukaLand

Ich kümmere mich darum den aktuellsten Staus immer nur von hier nach dort zu übertragen.
Die Ergänzung meinerseits hab ich hier gepostet und dort in den Code eingebaut.

Du darfst aber auch gern selbst in meinen Posts dort editieren oder den Thread ergänzen (das sollte mit deinem GF-Status gehen, oder?).
Oder schlag gerne was vor, wie wir das besser handhaben können. Ich bin da offen :happy2:

mali

Zitat von: TakaTukaLand am 11 Juli 2025, 00:20:17Oder schlag gerne was vor, wie wir das besser handhaben können. Ich bin da offen :happy2:

Alles gut, mach genau so, wie Du es magst :-)

Hier im Thread, habe ich mal alle vorherigen Versionen aus allen 3 Seiten rauseditiert und nur die letzte gültige stehen gelassen. Damit kommt es potentiell auch zu weniger WirrWarr und Konfusion.

Sofern die IMDb nicht wieder was ändert, oder jemand noch eine weitere Idee für ein Feature hat, ist das Ding ja auch fertig.

TakaTukaLand

11 Juli 2025, 23:56:23 #85 Letzte Bearbeitung: Gestern um 00:00:18 von TakaTukaLand
Top :respect:

Dann hab ich jetzt noch eine Ergänzung:
    'unbestätigt'
Und du hast vor den neu hinzugefügten Begriffen noch das Komma am Ende jeder Zeile hinzufügen. Hatte ich auch erst vergessen, aber dann funktionierte das Script nicht :happy3:

mali

Zitat von: TakaTukaLand am 11 Juli 2025, 23:56:23Dann hab ich jetzt noch eine Ergänzung:
    'unbestätigt'
Und du hast vor den neu hinzugefügten Begriffen noch das Komma am Ende jeder Zeile hinzufügen. Hatte ich auch erst vergessen, aber dann funktionierte das Script nicht :happy3:

 :respect:



Ich glaube Du müsstest hier auch in anderen Postings editieren können?

TakaTukaLand

Ja, kann ich. Dann trage ich Ergänzungen einfach oben ein, ja?

TinyPortal 2.0.0 © 2005-2020