Flash Videos downloaden

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
Benutzeravatar
crackpod_
User
Beiträge: 40
Registriert: Mittwoch 3. Dezember 2008, 21:46

Dienstag 16. Dezember 2008, 17:21

Hallo,
Ich wollte wissen ob jemand einen "universalen" Weg kennt mittels Python Flash Videos von Seiten wie z.b YouTube, Dailymotion oder Vimeo zu downloaden. Bis jetzt habe ich nur Lösungen in Python gesehen die mit viel Aufwand und ganz speziell auch nur für eine bestimmte Seite geschrieben worden sind, ich suche aber einen wenig mit dem es auf fast jeder Seite klappt. (Am besten noch mit mechanize)

crackpod
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Dienstag 16. Dezember 2008, 17:50

Und, ähm, wie stellst du dir das vor? Das Problem ist ja, dass man irgendwo die URL zum FLV herbekommen muss und das ist, je nach Seite gar nicht so einfach, denn es reicht nicht einfach in der Seite nach ``.flv`` zu suchen und das dann als URL zu nehmen (denn das kann ja auch eine URL zu einem Skript sein, dass die FLV-Datei erst dynamisch generiert). Außerdem kann es sein, dass die URL über JavaScript zusammengesetzt wird, also kannst du entweder die Funktionalität des JavaScripts einbauen oder einen JavaScript-Interpreter starten und ihn diese Skripts ausführen lassen (siehe dazu etwa PyKHTML). Schließlich ist es auch noch möglich dass der Seitenbetreiber die URL in die SWF-Datei einbettet, da müsstest du entweder das SWF disassemblieren oder versuchen das Flash auszuführen.

Wie dir mechanize an dieser Stelle helfen sollte ist mir unklar. Ich würde das eher mit lxml + PyKHTML machen.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
DasIch
User
Beiträge: 2465
Registriert: Montag 19. Mai 2008, 04:21
Wohnort: Berlin

Dienstag 16. Dezember 2008, 18:21

Flash ausführen und alles mit einem Proxy abfangen wäre eine möglichkeit.
Benutzeravatar
crackpod_
User
Beiträge: 40
Registriert: Mittwoch 3. Dezember 2008, 21:46

Dienstag 16. Dezember 2008, 20:32

Flash mit Python ausführen? Ist das möglich? PyKHTML sieht sehr interessant aus, irritiert mich aber ein bisschen das man zwingend KDE libs dafür braucht.

Was ich lieben würde, wäre ein Python Interface für Firefox um bestimmte Aufgaben zu automatisieren, das wäre einfach nur genial.

Code: Alles auswählen

#!/usr/bin/env python

import firefox

br = firefox.Browser()
br.new_tab("http://www.google.de")
# ...
crackpod
derdon
User
Beiträge: 1316
Registriert: Freitag 24. Oktober 2008, 14:32

Dienstag 16. Dezember 2008, 20:52

Du suchst das Modul webbrowser. Warum willst du den Benutzer da auf Firefox beschränken?
Benutzeravatar
crackpod_
User
Beiträge: 40
Registriert: Mittwoch 3. Dezember 2008, 21:46

Dienstag 16. Dezember 2008, 21:19

derdon hat geschrieben:Du suchst das Modul webbrowser. Warum willst du den Benutzer da auf Firefox beschränken?
Weil ich ehrlich gesagt nicht glaube das webbrowser die Funktionalität bereit stellt die ich brauche. Z.b Forms ausfüllen, abschicken und die HTML Daten als Antwort auswerten werde ich damit wohl kaum können, oder?
Benutzeravatar
veers
User
Beiträge: 1219
Registriert: Mittwoch 28. Februar 2007, 20:01
Wohnort: Zürich (CH)
Kontaktdaten:

Dienstag 16. Dezember 2008, 21:51

[url=http://29a.ch/]My Website - 29a.ch[/url]
"If privacy is outlawed, only outlaws will have privacy." - Phil Zimmermann
Benutzeravatar
Trundle
User
Beiträge: 591
Registriert: Dienstag 3. Juli 2007, 16:45

Dienstag 16. Dezember 2008, 22:03

Ich hatte irgendwann einmal das hier zusammengefrickelt, weil es so einen Thread schon einmal gab. Der Code benötigt pcap-Bindings und Impacket und lauscht an einem Interface (``eth0`` im Code) und gibt die URL für jedes FLV aus, das er findet.
"Der Dumme erwartet viel. Der Denkende sagt wenig." ("Herr Keuner" -- Bertolt Brecht)
Benutzeravatar
crackpod_
User
Beiträge: 40
Registriert: Mittwoch 3. Dezember 2008, 21:46

Mittwoch 17. Dezember 2008, 17:43

veers hat geschrieben:http://29a.ch/httpripper/

Gruss,
Jonas
Trundle hat geschrieben:Ich hatte irgendwann einmal das hier zusammengefrickelt, weil es so einen Thread schon einmal gab. Der Code benötigt pcap-Bindings und Impacket und lauscht an einem Interface (``eth0`` im Code) und gibt die URL für jedes FLV aus, das er findet.
Hallo ihr beiden! Vielen Dank für euren tollen Scripte. Trundle, Ich habe jetzt mit deinem angefangen und bin echt begeistert (funktioniert genial). Veers, deines kenne ich schon, bin davon auch total begeistert, weiß aber leider nicht genau wie ich es am besten (GUI-Less) in meinem Script benutze. Ich müsste dann deinen Proxy starten, aus der Liste der empfangenden Medien-URL's die URL's mit einer bestimmten Endung abfangen und danach weiterverwenden richtig?

Könntest du mir dazu eventuell ein Beispiel geben?

crackpod
Antworten