Hi,
Es gibt zwar schon Tutorials dazu, welche aber das alte YouTube-Design beschreiben und eins, dazu geb ich jetzt kein Kommentar
Als erstes kommt ein Theorie-Teil dann die Praxis ..
Theorie
Für alle die, die es interressiert habe ich hier noch einen kleinen Theorie-Teil geschrieben.
Auf diese Art von Download bin ich gekommen, als ich eine sauberere Lösung zum Herausfinden des Downloadlinks für meinen Video Capturer (bald VGrabber) gesucht habe.
Schließlich bin ich zum Cache gelangt und habe eine Datei gefunden :
http://www.youtube.com/get_video_info?video_id=[ID]&fmt=[Auflösung]
Info:
Bei diesem Video handelt es sich um das Kool Savas – Rhythmus meines Lebens.
Das Video kommt von dem YouTube-Kanal OptikRecordsTV.
Diese sieht im Aufbau wie folgt aus :
get_video_info
Auf den ersten Blick erkennt man vielleicht den den Uploader, ab dann kann man die Dinge nur erkennen wen man sich bei dem alten YouTube ein bisschen gekümmert hat (kein C&P !).
Danach habe ich die Datei 'sauber' auseinander genommen :
Direkt in der ersten Zeile findet man den Uploader:
Das ist wohl (hoffentlich) klar, dass der Uploader OptikRecordsTV ist.
Der nächste wichtige Abschnitt ist die fmt_stream_map :
Dort können wir die Downloadurls zu den Formaten auslesen.
Die URLs sind durch ein Komma getrennt, deshalb kann man sie einfach splitten. Dann hat man aber noch nicht den fertigen Download-link, denn man muss die Zahl am Anfang wegmachen. Dies sollte aber kein Problem darstellen ;).
Es gibt folgende Formate : en.wikipedia.org/wiki/YouTube#Quality_and_codecs
Gefunden habe ich diese :
37, 22, 35, 34, 18, 5
Danach folgen die Keywords:
Diese sind durch Kommas getrennt.
Nach drei Übersprungenen URL-Parametern kommt der Parameter fmt_list :
Durch diesen blicke ich nicht ganz durch, weil ich glaube, dass manche Werte sich je nach Bildschirmgröße sich ändern.
Jedenfalls sieht man, welche Video-Qualität man zur Verfügung hat.
Danach kommen glaub ich die URLs für die Auswahl nach dem Video (Video wiederholen, …)
Als letztes kommen noch zwei mehr oder weniger wichtige Dinge, der Thumbnail-URL und der Titel:
Ich denke es ist klar,
dass das die thumbnail-url ist
und das der Titel :
Nun ja das ist auch schon das Ende von der Theorie, für jeden der sich das durchgelesen hat und ein bisschen Visual Basic kann wird das kein Problem sein.
Praxis
Die Praxis ist in VB und vergleichsweise kurz gehalten, da ich nur den Download beschreiben werde.
Nicht getestet !
Fragen bitte posten !
gruß, Trudi
Es gibt zwar schon Tutorials dazu, welche aber das alte YouTube-Design beschreiben und eins, dazu geb ich jetzt kein Kommentar
Als erstes kommt ein Theorie-Teil dann die Praxis ..
Theorie
Für alle die, die es interressiert habe ich hier noch einen kleinen Theorie-Teil geschrieben.
Auf diese Art von Download bin ich gekommen, als ich eine sauberere Lösung zum Herausfinden des Downloadlinks für meinen Video Capturer (bald VGrabber) gesucht habe.
Schließlich bin ich zum Cache gelangt und habe eine Datei gefunden :
http://www.youtube.com/get_video_info?video_id=[ID]&fmt=[Auflösung]
Info:
Bei diesem Video handelt es sich um das Kool Savas – Rhythmus meines Lebens.
Das Video kommt von dem YouTube-Kanal OptikRecordsTV.
Diese sieht im Aufbau wie folgt aus :
fexp=901307,905602&creator=OptikRecordsTV&allow_embed=1&fmt_stream_map=37|http://v14.lscache7.c.youtube.com/videoplayback?ip=93.0.0.0&sparams=id%2Cexpire%2Cip%2Cipbits%2Citag%2Cratebypass&fexp=901307%2C905602&itag=37&ipbits=8&sver=3&ratebypass=yes&expire=1289419200&key=yt1&signature=649556F936B27F5C7E8A109A8C8028130BFB638A.B82E0455011388ECA66D5FA4DF82A68DDB5351BE&id=9955523a95742e25||tc.v14.cache7.c.youtube.com,22|http://v1.lscache8.c.youtube.com/videoplayback?ip=93.0.0.0&sparams=id%2Cexpire%2Cip%2Cipbits%2Citag%2Cratebypass&fexp=901307%2C905602&itag=22&ipbits=8&sver=3&ratebypass=yes&expire=1289419200&key=yt1&signature=6724E24C597616477EBEB6AB4BB5866FE5A8C30B.2E1BC6F0189FD38DCBF53D4B1E5304F647051ED3&id=9955523a95742e25||tc.v1.cache8.c.youtube.com,35|http://v9.lscache7.c.youtube.com/videoplayback?ip=93.0.0.0&sparams=id%2Cexpire%2Cip%2Cipbits%2Citag%2Calgorithm%2Cburst%2Cfactor&fexp=901307%2C905602&algorithm=throttle-factor&itag=35&ipbits=8&burst=40&sver=3&expire=1289419200&key=yt1&signature=AB3370FB60F5C875E761F9689240B4C15E0F3084.7BB7C6B9870378669970B6C9B1E18601F277773B&factor=1.25&id=9955523a95742e25||tc.v9.cache7.c.youtube.com,34|http://v8.lscache7.c.youtube.com/videoplayback?ip=93.0.0.0&sparams=id%2Cexpire%2Cip%2Cipbits%2Citag%2Calgorithm%2Cburst%2Cfactor&fexp=901307%2C905602&algorithm=throttle-factor&itag=34&ipbits=8&burst=40&sver=3&expire=1289419200&key=yt1&signature=CDC2FAAE7C1ECFDAF4BCBC55B74B8296CE1C7832.9317AD3BCF61C2456F149DD46B4319011E0A3926&factor=1.25&id=9955523a95742e25||tc.v8.cache7.c.youtube.com,18|http://v22.lscache7.c.youtube.com/videoplayback?ip=93.0.0.0&sparams=id%2Cexpire%2Cip%2Cipbits%2Citag%2Calgorithm%2Cburst%2Cfactor&fexp=901307%2C905602&algorithm=throttle-factor&itag=18&ipbits=8&burst=40&sver=3&expire=1289419200&key=yt1&signature=C20F9DBC0AFF0132A3985D2AB2C864EDB781FBF9.81239F4D3F3C2707D1E44CD27FDB557E7CBA6423&factor=1.25&id=9955523a95742e25||tc.v22.cache7.c.youtube.com,5|http://v10.lscache3.c.youtube.com/videoplayback?ip=93.0.0.0&sparams=id%2Cexpire%2Cip%2Cipbits%2Citag%2Calgorithm%2Cburst%2Cfactor&fexp=901307%2C905602&algorithm=throttle-factor&itag=5&ipbits=8&burst=40&sver=3&expire=1289419200&key=yt1&signature=D47DE47657A7FFC079597ED8A810A359AE2A9663.412704E8723A1FE0E5D4AA5D57F5C8D808456821&factor=1.25&id=9955523a95742e25||tc.v10.cache3.c.youtube.com&fmt_url_map=37|http://v14.lscache7.c.youtube.com/videoplayback?ip=93.0.0.0&sparams=id%2Cexpire%2Cip%2Cipbits%2Citag%2Cratebypass&fexp=901307%2C905602&itag=37&ipbits=8&sver=3&ratebypass=yes&expire=1289419200&key=yt1&signature=649556F936B27F5C7E8A109A8C8028130BFB638A.B82E0455011388ECA66D5FA4DF82A68DDB5351BE&id=9955523a95742e25,22|http://v1.lscache8.c.youtube.com/videoplayback?ip=93.0.0.0&sparams=id%2Cexpire%2Cip%2Cipbits%2Citag%2Cratebypass&fexp=901307%2C905602&itag=22&ipbits=8&sver=3&ratebypass=yes&expire=1289419200&key=yt1&signature=6724E24C597616477EBEB6AB4BB5866FE5A8C30B.2E1BC6F0189FD38DCBF53D4B1E5304F647051ED3&id=9955523a95742e25,35|http://v9.lscache7.c.youtube.com/videoplayback?ip=93.0.0.0&sparams=id%2Cexpire%2Cip%2Cipbits%2Citag%2Calgorithm%2Cburst%2Cfactor&fexp=901307%2C905602&algorithm=throttle-factor&itag=35&ipbits=8&burst=40&sver=3&expire=1289419200&key=yt1&signature=AB3370FB60F5C875E761F9689240B4C15E0F3084.7BB7C6B9870378669970B6C9B1E18601F277773B&factor=1.25&id=9955523a95742e25,34|http://v8.lscache7.c.youtube.com/videoplayback?ip=93.0.0.0&sparams=id%2Cexpire%2Cip%2Cipbits%2Citag%2Calgorithm%2Cburst%2Cfactor&fexp=901307%2C905602&algorithm=throttle-factor&itag=34&ipbits=8&burst=40&sver=3&expire=1289419200&key=yt1&signature=CDC2FAAE7C1ECFDAF4BCBC55B74B8296CE1C7832.9317AD3BCF61C2456F149DD46B4319011E0A3926&factor=1.25&id=9955523a95742e25,18|http://v22.lscache7.c.youtube.com/videoplayback?ip=93.0.0.0&sparams=id%2Cexpire%2Cip%2Cipbits%2Citag%2Calgorithm%2Cburst%2Cfactor&fexp=901307%2C905602&algorithm=throttle-factor&itag=18&ipbits=8&burst=40&sver=3&expire=1289419200&key=yt1&signature=C20F9DBC0AFF0132A3985D2AB2C864EDB781FBF9.81239F4D3F3C2707D1E44CD27FDB557E7CBA6423&factor=1.25&id=9955523a95742e25,5|http://v10.lscache3.c.youtube.com/videoplayback?ip=93.0.0.0&sparams=id%2Cexpire%2Cip%2Cipbits%2Citag%2Calgorithm%2Cburst%2Cfactor&fexp=901307%2C905602&algorithm=throttle-factor&itag=5&ipbits=8&burst=40&sver=3&expire=1289419200&key=yt1&signature=D47DE47657A7FFC079597ED8A810A359AE2A9663.412704E8723A1FE0E5D4AA5D57F5C8D808456821&factor=1.25&id=9955523a95742e25&iv_enabled_features=S&allow_ratings=1&keywords=OptikRecordsTV,Kool Savas,Rhythmus meines Lebens,Lyrics,Text,Song,Essah Entertainment,John Bello Story 3,Original Video,HD,HQ,Live,Immer wenn ich rhyme,Techno Pilot,Rewind,!Bazz,Melbeatz,Azad,Monstershit,DJ Sir Jai,Moe Mitchell,Olli Banjo,Manny Marc,Tour,Splash! Festival,Hannover Capitol,Nürnberg Hirsch,München Backstage,Neu,New,2010,German Rap,Hip Hop,G-Shock&track_embed=0&iv3_module=http://s.ytimg.com/yt/swf/iv3_module-vflmF5Z7U.swf&fmt_list=37/1920x1080/9/0/115,22/1280x720/9/0/115,35/854x480/9/0/115,34/640x360/9/0/115,18/640x360/9/0/115,5/320x240/7/0/0&plid=AASUszTswk9r1NFM&iv_storage_server=http://www.google.com/reviews/y/&author=OptikRecordsTV&muted=0&length_seconds=209&has_cc=False&iv_module=http://s.ytimg.com/yt/swf/iv_module-vflLv-rG_.swf&ftoken=&status=ok&watermark=http://s.ytimg.com/yt/swf/logo-vfl_bP6ud.swf,http://s.ytimg.com/yt/swf/hdlogo-vfloR6wva.swf×tamp=1289397314&iv_load_policy=1&fmt_map=37/1920x1080/9/0/115,22/1280x720/9/0/115,35/854x480/9/0/115,34/640x360/9/0/115,18/640x360/9/0/115,5/320x240/7/0/0&leanback_module=http://s.ytimg.com/yt/swf/leanback_module-vflDc64ZL.swf&hl=de_DE&iv_logging_level=3&endscreen_module=http://s.ytimg.com/yt/swf/endscreen-vflsIki_j.swf&vq=auto&avg_rating=4.90269106566&video_id=mVVSOpV0LiU&fslarge=1&token=vjVQa1PpcFPKnJJXLA0r51GC-eAOTbL8_lsDP1CPmB4=&thumbnail_url=http://i2.ytimg.com/vi/mVVSOpV0LiU/default.jpg&title=Kool Savas "Rhythmus meines Lebens" (Official HD Video) 2010
Auf den ersten Blick erkennt man vielleicht den den Uploader, ab dann kann man die Dinge nur erkennen wen man sich bei dem alten YouTube ein bisschen gekümmert hat (kein C&P !).
Danach habe ich die Datei 'sauber' auseinander genommen :
Direkt in der ersten Zeile findet man den Uploader:
Das ist wohl (hoffentlich) klar, dass der Uploader OptikRecordsTV ist.
Der nächste wichtige Abschnitt ist die fmt_stream_map :
Dort können wir die Downloadurls zu den Formaten auslesen.
Die URLs sind durch ein Komma getrennt, deshalb kann man sie einfach splitten. Dann hat man aber noch nicht den fertigen Download-link, denn man muss die Zahl am Anfang wegmachen. Dies sollte aber kein Problem darstellen ;).
Es gibt folgende Formate : en.wikipedia.org/wiki/YouTube#Quality_and_codecs
Gefunden habe ich diese :
37, 22, 35, 34, 18, 5
Danach folgen die Keywords:
Diese sind durch Kommas getrennt.
Nach drei Übersprungenen URL-Parametern kommt der Parameter fmt_list :
Durch diesen blicke ich nicht ganz durch, weil ich glaube, dass manche Werte sich je nach Bildschirmgröße sich ändern.
Jedenfalls sieht man, welche Video-Qualität man zur Verfügung hat.
Danach kommen glaub ich die URLs für die Auswahl nach dem Video (Video wiederholen, …)
Als letztes kommen noch zwei mehr oder weniger wichtige Dinge, der Thumbnail-URL und der Titel:
Ich denke es ist klar,
dass das die thumbnail-url ist
und das der Titel :
Nun ja das ist auch schon das Ende von der Theorie, für jeden der sich das durchgelesen hat und ein bisschen Visual Basic kann wird das kein Problem sein.
Praxis
Die Praxis ist in VB und vergleichsweise kurz gehalten, da ich nur den Download beschreiben werde.
Nicht getestet !
VB.NET-Quellcode
- Private WithEvents wc As WebClient
- Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
- wc = New WebClient
- End Sub
- Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
- Dim url As String = TextBox1.Text
- Dim id As String = url.Substring(url.IndexOf("v=") + 2) 'Id herausfiltern
- Dim downloadurl as String = http://www.youtube.com/get_video_info?video_id= & id & "&fmt=18"
- Dim content as string = ""
- Dim Request As HttpWebRequest = HttpWebRequest.Create(downloadurl)
- Dim Response As HttpWebResponse = Request.GetResponse()
- Dim reader As StreamReader = New StreamReader(Response.GetResponseStream)
- content = reader.ReadToEnd
- Dim content_splitted() as String = content.Split(“fmt_url_map”) 'Das geht auch sauberer mit RegEx
- Dim DownloadUrlRegEx as New Regex(“,18|(?<url>(.*)),”)
- Dim DownloadUrl = DownloadUrlRegEx.Match(content_splitted(1)).Groups("url").ToString
- '---Hier können alle anderen Infos auslesen werden.---
- '---Achtung : dann die Variable 'content' benutzen, nicht 'content_splitted'---
- wc.DownloadFileAsync(DownloadUrl, "vid.flv")
- End Sub
Fragen bitte posten !
gruß, Trudi
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Trudi“ ()