Entwickler-Ecke
Internet / Netzwerk - Wie funktioniert ein Youtube Downloader
Dude566 - Mo 07.09.09 18:14
Titel: Wie funktioniert ein Youtube Downloader
Ich würde gerne eine art Youtube Downloader programmieren doch habe keinerlei Ahnung wie ein solcher funktioniert und wie er an die Flashdatei kommt.
Daher hoffe ich das ihr mir weiterhelfen könnt.
Gruß Dude566
Jakob_Ullmann - Mo 07.09.09 18:23
Ich würde mal vermuten, genauso wie ein Browser. Ich schätze, dazu musst du den entsprechenden object-Tag filtern und analysieren.
EDIT: Mist, da war einer schneller. :P
Tilo - Mo 07.09.09 19:55
Ich würd den Tempörären Ordner des jeweiligen Browsers überwachen.
YouTube Videos sind flv-Dateien. Einfach aus dem Ordner herauskopieren und die Dateiendung anhängen.
Dude566 - Mo 07.09.09 20:25
Tilo hat folgendes geschrieben : |
Ich würd den Tempörären Ordner des jeweiligen Browsers überwachen.
YouTube Videos sind flv-Dateien. Einfach aus dem Ordner herauskopieren und die Dateiendung anhängen. |
Die Methode würde ich bevorzugen, da ich so auch Videos von anderen Seiten wie MyVideo oder andere mit Flashvideos downloaden kann.
Nur wo ist der Temp Ordner für Firefox unter Vista, in XP weis ich wo er zufinden ist.
Edit:
Du hast dort garkeinen Post. :nixweiss:
IceBube - Mo 07.09.09 20:44
Doch ich hab da einen Post...komisch :hm:
Hier der Post als Zitat
Zitat: |
Hallo!
Bei YouTube hat sich der Downloadlink geändert und da ein paar wissen wollten wie man zu dem Link nun kommt, dachte ich zeig es euch...
Der Download-Link sieht so aus:
Zitat:
http://www.youtube.com/get_video?video_id=ID&t=Signatur
ID:
Hier muss die ID des YouTube Clips stehen, diese findet ihr in der Adresse des YouTube Clips:
Hier ein Beispiel (Das Fett geschriebene ist hier die ID!)
Zitat:
http://www.youtube.com/watch?v=PzpyLaLWfHk&feature=related
So nun haben wir die ID, das schaut nun so aus:
Zitat:
http://www.youtube.com/get_video?video_id=PzpyLaLWfHk&t=Signatur
Signatur:
Jetzt brauchen wir nur noch die Signatur, diese findet man im Quelltext der Youtube-Clip-Seite!
(Tipp: Sucht im Quelltext nach "swfArgs" weiter unten seht ihr dann "t": - daneben steht die Sigantur!)
Die wäre dann in dem Fall:
OEgsToPDskJ7QNeqp2fDT7L-n_XHoeC9
Nun haben wir alles was wir benötigen, der Downloadlinke zur "Flv Datei" schaut nun so aus:
http://www.youtube.com/get_video?vide ... =OEgsToPDskJ7QNeqp2fDT7L-n_XHoeC9
So weit so gut, will man jedoch das Video als "Mp4 Datei" herunterladen hängt man nun am Ende des Downloadlinks dieses dazu "&fmt=18"
Der Downloadlink der "Mp4 Datei" schaut nun so aus:
http://www.youtube.com/get_video?vide ... J7QNeqp2fDT7L-n_XHoeC9&fmt=18
Ich hoffe jeder hats verstanden, und einigen hilft es Smile
Sollten Hä? Wie jetzt? auftauchen dann nur her damit! Mr. Green
lg
|
Dude566 - Mo 07.09.09 20:56
Du hast recht, habe aus versehen dich mit einem deiner Vorposter verwechselt.
Edit : Ich kann das t: nicht finden im Quelltext.
IceBube - Di 08.09.09 15:23
Du musst nach "t": suchen!
lg
Edit:
Hat sich anscheinend bei Youtube geändert...
Dude566 - Di 08.09.09 15:34
Mmmmh ok also kann ich die Variante vergessen...
Aber wo werden denn nun unter Vista die flv Dateien etc abgespeichert, den Temp Ordner von Firefox finde ich nicht.
Jakob_Ullmann - Di 08.09.09 16:04
Ich würde mal sagen, irgendwo. An einem beliebigen Ort...
Dude566 - Di 08.09.09 17:30
Jaaa das bringt mich natürlich um Längen weiter. :roll:
Ne mal im ernst wo kann ich die denn finden?
IceBube - Di 08.09.09 17:35
Dude566 hat folgendes geschrieben : |
Mmmmh ok also kann ich die Variante vergessen... |
Wieso die Variante vergessen? Sie funktioniert doch, du hast nur nach dem Falschen gesucht!
lg
IceBube hat folgendes geschrieben : |
Edit:
Hat sich anscheinend bei Youtube geändert... |
Mit dem meinte ich ja nur dass sich "t:" nach " "t": " geändert hat...
Jakob_Ullmann - Di 08.09.09 17:37
Dachte erst, du fragst, wo du die Dateien abspeichern kannst. Wenn du jetzt wissen willst, wo Firefox das abspeichert, wirst du wohl etwas differenzieren müssen, weil ja der Temp-Ordner soweit ich weiß verändert werden kann. Standardmäßig ist das aber:
C:\Users\NUTZERNAME\AppData\Local\Temp
zumindest für Bilder.
EDIT: Also %appdata%\Local\Temp
Dude566 - Di 08.09.09 17:44
Ach an Googlen habe ich ja garnicht gedacht. :roll: :gruebel: Ach ne habe ich ja doch! :think:
Habe auch schon diese Pfadangaben gesehen wie etwa:
C:\Users\HansDieter\AppData\Local\Mozilla\Firefox\Profiles\dma6ltjd.default
doch darin erscheint keine flv Datei wenn ich aber eigentlich gerade ein Video vollständig geladen im Browser offen habe. :nixweiss:
Edit: Der Post is an Yogu gerichtet.
IceBube - Di 08.09.09 17:46
Dude566 hat folgendes geschrieben : |
Ach an Googlen habe ich ja garnicht gedacht. :roll: :gruebel: Ach ne habe ich ja doch! :think:
Habe auch schon diese Pfadangaben gesehen wie etwa:
C:UsersHansDieterAppDataLocalMozillaFirefoxProfilesdma6ltjd.default
doch darin erscheint keine flv Datei wenn ich aber eigentlich gerade ein Video vollständig geladen im Browser offen habe. :nixweiss: |
Unter Vista werden die Clips wie von
Jakob_Ullmann erwähnt im "C:\Users\NUTZERNAME\AppData\Local\Temp" gespeichert!
Jedoch unter der Dateierweiterung ".tmp"
lg
Dude566 - Di 08.09.09 17:51
Ah ok und wie kann ich dann an die eigentlichen flv Dateien kommen, und wie kann ich diese voneinander unterscheiden da man dort ja mehrere hat.
Oder soll das jetzt heisen das mir dort das OS jetzt einen Strich durch die Rechnung macht?
Dude566 - Di 08.09.09 18:17
Zitat: |
Im Cache-Ordner von Firefox sind die Dateibezeichnungen doch codiert. Da muss man sich eben die größten rauskopieren, solange Firefox noch aktiv ist. Und dann die Datei(en) mit der Endung versehen. Trifft man die richtige Datei, läuft das Video.
Gruß Eljot
Mit Zitat antworten |
Und das soll funktionieren, das glaube ich nicht so recht.
Tilo - Di 08.09.09 19:39
Dude566 hat folgendes geschrieben : |
Zitat: | Im Cache-Ordner von Firefox sind die Dateibezeichnungen doch codiert. Da muss man sich eben die größten rauskopieren, solange Firefox noch aktiv ist. Und dann die Datei(en) mit der Endung versehen. Trifft man die richtige Datei, läuft das Video.
Gruß Eljot
Mit Zitat antworten |
Und das soll funktionieren, das glaube ich nicht so recht. |
Probier es einfach mal aus!
Wichtig dabei ist, dass der Cahe nicht voll ist da sonst nicht gespeichert wird. (einfach vorher leeren)
a) CacheOrdner öffnen
b) das Video im Browser laden
c) Cache beobachten, welche Datei stetig größer wird
d) sobald diese Datei nicht mehr wächst, in ein beliebiges Verzeichniss kopieren (nicht verschieben! das klappt nicht)
e) der Datei einen besseren Namen, sowie passende Endung verpassen.
Natürlich muss der Rechner die Entsprechenden Codes kennen. Für Flv-Dateien einfach einen entsprechenden Player installieren.
Dude566 - Di 08.09.09 20:00
Ok ich habe den VLC Player drauf der ja auch flv Dateien abspielt also müsste es funktionieren, jetzt muss ich mir nur noch überlegen wie ich das ganze mit einem Programm realisieren kann das dieses auf die wachsende Größe schaut und dann auch herauskopiert inkl neuer Dateiendung.
Edit: Nur blöd das ich während das Video im Browser noch aktiv ist ich es nicht kopieren kann, und wenn ich den Tab schließe verschwindet natürlich auch wieder die temporäre Datei. :?
IceBube - Di 08.09.09 21:33
Hat die Datei von Youtube, im Temp, nicht den Namen von der id des Clips??
Leichter ist eindeutig meine Methode, bei dieser kann man auch die hq Clips im mp4 format herunterladen...
Lg
martin300 - Mi 09.09.09 09:49
@IceB. : Ist das Programm schon fertig, oder noch nicht umgesetzt? Wenns fertig ist würde es mich interessieren.
IceBube - Mi 09.09.09 15:18
martin300 hat folgendes geschrieben : |
@IceB. : Ist das Programm schon fertig, oder noch nicht umgesetzt? Wenns fertig ist würde es mich interessieren. |
Welches Programm? Ich hab nur versucht
Dude566 zu erklären wie man Youtube Clips herunterladet!
lg
Dude566 - Mi 09.09.09 15:54
Also IceBube deine Variante ist die wahrscheinlich beste jedoch möchte ich nicht nur Videos von YouTube herunterladen sondern auch von anderen Plattformen.
Also habe ich nun das Problem das ich die Datei im Temp Ordner während sie verwendet wird ich sie nicht kopieren kann.
Tilo - Mi 09.09.09 20:53
alle YouTube ähnlich Plattformen arbeiten nach einem ähnlichen Prinzip.
Schwierig wird es, wenn keine temporäre Speicherug im Dateisystem erfolgt.
Fies wäre auch die Nutzung von
ADS [
http://de.wikipedia.org/wiki/Alternate_Data_Streams].
ich halb mal mit Hilfe von Firefox gesucht und hier einen Händischen Weg gefunden:
Die entsprechende FLV-Datei im Cache findest Du so:
a) URL des Videos auf Youtube merken.
b) Nach dieser URl in "about:cache?device=disk" (Im FireFox eingeben! -> Keine Ahnung wie das per externem Program geht)
c) Dadurch findet man dann einen link der wie folgt aufgebaut ist: about:cache-entry?client=HTTP&sb=1&key=[URL-YouTube-Video]
d) Diese Adresse führt zu einer Seite die solch einen Eintrag enthält:
Quelltext
1: 2:
| file on disk: C:\Dokumente und Einstellungen\[Pfad]\Anwendungsdaten\Mozilla\Firefox\Profiles\wi4ptq7f.default\Cache\7ECADA51d01 |
Diese Datei beobachten und dann wenn sie nicht mehr wächst rauskopieren.
Ich such mal das ganze für den IE raus (-> TWebBrowser dürfte dann die Wahl sein)
Dude566 - Mi 09.09.09 21:34
Das mag alles gut und schön sein aber ich kann die Datei während des Zugriffs leider nicht kopieren und dies ist ja mein Hauptproblem.
IceBube - Fr 11.09.09 16:44
Ich würd die Variante, mit dem Kopieren aus dem Temp nicht empfehlen weil
* Du musst warten bis es heruntergeladen worden ist - das erschwert das programmieren deines Programmes
* Das Video finden unter den ganzen anderen Dateien
* Umständlich
Die meiner Meinung beste Variante wäre, den Downloadlink der anderen Hoster(myvideo,...) herauszufinden, um den Clip direkt von dem Server herunterzuladen!
Von Youtube weißt du es ja schon, als nächstes schaust du dir z.b. myvideo an...
Geh auf
http://2video.de/ gib einen BeispielClip von myvideo ein...
z.b:
Irgend ein Clip von MyVideo
http://www.myvideo.at/watch/3849435
Downloadlink bei 2video.de für den oben geschriebenen Clip
http://is3.myvideo.de/at/movie8/3e/3849435.flv
So nun sieht man, dass man für den Downloadlink die ID des Videos benötigt und noch andere Sachen, diese findet man womöglich in dem Quelltext von der Clip-Seite auf myVideo heraus?!
lg
Edit:
Such im Quelltext nach:
http://is1.myvideo.de/at/
Das fettgeschriebene wird benötigt!
rel='image_src' href='
http://is1.myvideo.de/at/movie14/8b/thumbs/6158250_1.jpg'
Nun brauchen wir nur noch die ID des Videos einfügen (Frag mich bitte nicht wo du die ID findest!) + .Flv anhängen
http://is1.myvideo.de/at/movie14/8b/6158250.flv
Fertig!
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!