Schreibe URLs in eine Textdatei, die einem Muster entsprechen

447
Christopher Johnson

Ich versuche, die Website nickjr.com zu analysieren, insbesondere die URL " http://www.nickjr.com/paw-patrol/videos/ ", die nur für vollständige Episoden gilt.

nickjr.com hat seine Website nach Showtitel, dann nach Spielen oder Videos, zumindest mit Paw Patrol, angelegt. Die URL bleibt also gleich, bis ich tatsächlich zum Abspielen eines Videos klicke. Es gibt mehrere Videos auf der Site, aber die vollständigen Episoden enthalten das Wort "vollständige Episode" in der URL.

Beispiel: Dies ist keine vollständige Episode:
http://www.nickjr.com/paw-patrol/videos/316-garden-guards/

Ein Beispiel ist eine vollständige Episode:
http://www.nickjr.com/paw-patrol/videos/paw-patrol-410-mission-paw-pups-save-the-royal-throne-s4-ep410-full-episode/

Meine Idee ist, youtube-dl zu verwenden, das auf ihrer Website funktioniert (getestet), um Episoden herunterzuladen, aber ich möchte nicht alle ihre Episoden herunterladen, da einige nicht vollständig sind. Also, was ich jetzt mache, ist für jedes Video und muss die URL kopieren und dann in youtube-dl kopieren. Es funktioniert, aber die Website von Nickjrs ist scheiße beim Versuch, sie zu navigieren.

Ich weiß, dass es Web-Spider gibt, aber ich konnte nicht genau das finden, wonach ich suche, und es machte nicht wirklich viel Sinn. Mein Plan wäre jedoch, die Site zu durchsuchen und die URL mit Regex zu verwenden, aber nur, um die URLs zu schreiben, die mit der Zeichenfolge der vollständigen Episode in eine Textdatei passen, die ich dann in youtube-dl importieren könnte.

Ich brauche also wirklich Hilfe beim Parsen der Site nur für vollständige Episoden, die in einer Textdatei gespeichert werden können.

Ich würde es auch vorziehen, wenn das Programm mit Ubuntu 16.04 kompatibel ist, aber ich kann auch Windows 10 verwenden, wenn es nötig ist.

0
Handelt es sich um eine einzelne Seite mit all diesen gültigen URLs? Oder müssen Sie mehrere Seiten crawlen? Richard vor 7 Jahren 0
Hmm ... ich bin mir nicht ganz sicher. Wenn ich auf ein Video klicke, wird eine neue URL unter "nickjr.com/pawpatrol/videos/newvideo" erstellt. Ich nehme an, ich brauche es, um mehrere Seiten zu crawlen. Christopher Johnson vor 7 Jahren 0

1 Antwort auf die Frage

1
Magnus

Wenn Sie Chrome verwenden, können Sie drücken F12, um die Entwicklertools aufzurufen, und dann das folgende kleine Snippet in der Konsole ausführen, um die Liste der Links zu schreiben:

$("a.route").each(function (i, a) ) 

Es funktioniert möglicherweise auch mit anderen Browsern, aber ich habe es nur auf Chrome getestet.

Ich werde es später versuchen, ich bin gerade von der Arbeit zurückgekehrt. Ich werde Sie, wenn ich etwas Zeit hatte, dies zu testen. Vielen Dank! Christopher Johnson vor 7 Jahren 0
Lief wie am Schnürchen! Ich hatte 32 Hits! Das Tolle an diesem Befehl ist, dass ich ihn mit dem gleichen Erfolg auf anderen Serien ausführen kann! Vielen Dank! Christopher Johnson vor 7 Jahren 0