YouTube videozeit auslesen

10/23/2010 00:02 rexfox#1
hey com^^,
wie im titel schon gesagt... ich finde in dem quelltext von youtube keine zeile , die das beschreibt(ich sehs einfach net^^) und weis auch net, wie ich des mache.. hab mir schon en paar sachn angeschaut
_stringbetween
stringregexp
_IEFormElementGetObjByname

aber weis net damit umzugehen..

würde gerne wissen, wie ich die richtige zeile im quellcode finde und welcher befehl da etwas ausliest..

ich hoffe ein denkanstoss reicht :D

schonma thx^^
10/23/2010 00:14 Fruschel#2
Weil Die Videozeit nicht im Quelltext vorhanden ist, den alles womit Du im Video navigierst (Pause, Weiterspielen, Sound usw.) gehört einem Objekt an, wahrscheinlich einem Flash-Objekt. Leider kenn ich mich nicht so gut mit AutoIt aus, dass ich die Videolänge auslesen kann. ;)

Google mal ein bisschen :)
10/23/2010 00:20 rexfox#3
okay.. thx mhm also google ich mal sowas wie : video länge aus flash objekt mit auto it auslesen^^
hoffe trotzdem auf weitere antworten^^
10/23/2010 00:22 omer36#4
im quellcode steht die zeit...

<span class="video-time">xx:xx</span>


aber immer einor sec weniger, als da steht, ist aber so...

such im quellcote nach "video-time" dann siehst du es.



nee ich glaube, da hab ich mich geirrt... das sind andere sachen... sry ^^
10/23/2010 00:31 rexfox#5
des mit video time hatte ich auch schon gesehn.. aber davon gibts mehrere..
des ist nur die video time von den weiteren vids.. also die die rechts stehn
10/23/2010 00:32 omer36#6
jo hab ich auch gemerkt ;D
und grade editiert :D
10/23/2010 00:39 rexfox#7
also auf fruschel zurückgehend..
hab in i-net nix gefunden^^
kp wie ich des ausles^^ HIIILLLLFFFEEEEEE XD
10/23/2010 00:48 omer36#8
Quote:
Originally Posted by rexfox View Post
also auf fruschel zurückgehend..
hab in i-net nix gefunden^^
kp wie ich des ausles^^ HIIILLLLFFFEEEEEE XD
ich schreib mal bald ein tut, wie man richtig googlt.... :D

PHP Code:
#include <IE.au3>
#include <String.au3>

$oIE=_IECreate("http://www.youtube.com/watch?v=b9mhpdIvitY",0,0)
$sHTML _IEDocReadHTML ($oIE)
$string _stringbetween($sHTML,'"length_seconds":',',')

MsgBox(64,"testing"$string[0]) 
es gibt die secunden, des aktuellen clips....
manchmal wird es 1sec weniger angezeigt, aber diesmal ist es richtig ^^
10/23/2010 00:50 maxi39#9
andere möglichkeit:

nimm CE und such nach den pointern der sekunden, vorteil du kannst sie nicht nur auslesen die zeit, sondern auch verändern....
10/23/2010 00:50 omer36#10
hab schon die lösung gefunden :p :D
schauste hoch ^^
10/23/2010 01:16 lolkop#11
wenn man den video teil vom source mal nach "&" aussplittet, erhält man [Only registered and activated users can see links. Click Here To Register...]...

wie man sieht werden hier auf die von omer36 gepostete art und weise die zeiten aller videos angezigt die zu sehen sind.

die ähnlichen videos, werden aber durch rv.x.length_seconds= gekennzeichnet.
das aktuelle hingegen hat kein rv.x. vor der länge stehen, sondern ist direkt durch ein & vom rest abgetrennt.

dh man kann leicht folgenden code bilden:
Code:
$length = StringRegExp(BinaryToString(InetRead('http://www.youtube.com/watch?v=m7zUlIITPps')), '&length_seconds=(.*?)&',1)
ConsoleWrite('länge in sekunden: '&$length[0]&@CRLF)
Edit:
sry hatte nur ganz oben im source geguckt =) das von omer36 funktioniert natürlich auch =)
10/23/2010 01:41 omer36#12
ja anfangs hatte ich ja per
<span class="video-time">xx:xx</span>
gemacht, aber dannach gecheckt, dass es alle zeiten link und rechts auch mitdrin hatt...

dannach hab ich ja das richtige gefunden:
$string = _stringbetween($sHTML,'"length_seconds":',',')

kommt das selbe wie bei dir raus,zugegeben, deine source ist "einbischen" kürzer als meins :D
10/23/2010 01:50 rexfox#13
thx an euch beide lolkop und omer XD
hab jetzt das von omer weil ich das zuerst gesehn hab^^
funzt soweit^^
10/23/2010 01:57 omer36#14
Quote:
Originally Posted by lolkop View Post
Edit:
sry hatte nur ganz oben im source geguckt =) das von omer36 funktioniert natürlich auch =)
irgentwas stimmt nicht...
in letzter zeit übersehen hier voll viele meine post´s -.-'
:D
10/23/2010 12:34 rexfox#15
hätte jetzt noch eine weitere frage ^^
wie starte ich ein youtubevideo im hintergrund? bzw wie lass ich es nochmal laufen wenn es vorbei ist... controlclick funzt mal wieder net :D und space mit controlsend auch net..
biite um hilfe ^^ mit controlklick wollte ich entweder auf play links unten drücken oder auf wiederholen... aber des mit den coords funzt wieder net-.-


edit hat sich geklärt^^