#cs ---------------------------------------------------------------------------- AutoIt Version: 3.2.13.3 (beta) Author: myName Script Function: Template AutoIt script. #ce ---------------------------------------------------------------------------- ; Script Start - Add your code below here #cs Functions: _Youtube_Read($iID) _Youtube_GetID($sPlayer) _Youtube_GetTitle($sPlayer) _Youtube_GetDescription($sPlayer) _Youtube_GetKeywords($sPlayer) _Youtube_GetEmbedLink($sPlayer) _Youtube_GetPlayerLink($sPlayer) _Youtube_GetPlayerSwf($sPlayer) _Youtube_Create($iX, $iY, $iWidth=$YT_DEFAULTWIDTH, $iHeight=$YT_DEFAULTHEIGHT) _Youtube_Load($aPlayerControl, $sPlayer, $iAutoPlay=True) _Youtube_Stop($aPlayerControl) #CE #include-once #include #include Global Const $YT_DEFAULTWIDTH = 425 Global Const $YT_DEFAULTHEIGHT = 344 ; Downloads the source of the Youtube page ; $iID = Video ID (example: "sNzEQ8hG1zA") Func _Youtube_Read($iID) $sSource = _INetGetSource('http://youtube.com/watch?v='&$iID) Return $sSource EndFunc ; Creates a embedded IE control for playing Youtube movies ; $iX, $iY, $iWidth, $iHeight = Coordinates of the control Func _Youtube_Create($iX, $iY, $iWidth=$YT_DEFAULTWIDTH, $iHeight=$YT_DEFAULTHEIGHT) Local $aReturn[2] $oIE = _IECreateEmbedded() $hObj = GUICtrlCreateObj($oIE, $iX, $iY, $iWidth, $iHeight) _IENavigate ($oIE, "about:blank", 0) _IEDocWriteHTML($oIE, '') $aReturn[0] = $oIE $aReturn[1] = $hObj Return $aReturn EndFunc ; Loads a movie into a player control. ; $aPlayerControl = A player control (return value of _Youtube_Create) ; $sPlayer = A movie (return value of _Youtube_Read) ; [$iAutoPlay] = Automaticly starts playing the movie if True. Func _Youtube_Load($aPlayerControl, $sPlayer, $iAutoPlay=True) If $iAutoPlay Then $sURL = _Youtube_GetPlayerLink($sPlayer) Else $sURL = _Youtube_GetEmbedLink($sPlayer) EndIf _IENavigate ($aPlayerControl[0], $sURL, 0) Return 1 EndFunc ; Stops playing a movie ; $aPlayerControl = Player control (return value of _Youtube_Create) Func _Youtube_Stop($aPlayerControl) _IENavigate ($aPlayerControl[0], "about:blank", 0) _IEDocWriteHTML($aPlayerControl[0], '') EndFunc Func _Youtube_GetKeywords($sPlayer) $sSource = $sPlayer $iPlayerLinkStart = StringInStr($sSource,' $aSourceSplit[0] Then Return "" $sPlayerLinkLine = $aSourceSplit[$iPlayerLinkLine] $iPlayerLinkStart = StringInStr($sPlayerLinkLine,"var pageVideoId = ") $sAfterPlayerLink = StringTrimLeft($sPlayerLinkLine,$iPlayerLinkStart+StringLen("var pageVideoId = ")-1) $sAfterPlayerLink = StringReplace($sAfterPlayerLink,";","") $sAfterPlayerLink = StringReplace($sAfterPlayerLink,"'","") Return $sAfterPlayerLink EndFunc Func _Youtube_GetDescription($sPlayer) $sSource = $sPlayer $iPlayerLinkStart = StringInStr($sSource,' $aSourceSplit[0] Then Return "" $sPlayerLinkLine = $aSourceSplit[$iPlayerLinkLine] $iPlayerLinkStart = StringInStr($sPlayerLinkLine,"var swfUrl = ") $sAfterPlayerLink = StringTrimLeft($sPlayerLinkLine,$iPlayerLinkStart+StringLen("var swfUrl = canPlayV9Swf() ? ")-1) $sAfterPlayerLink = StringReplace($sAfterPlayerLink,"'","") $aSplit = StringSplit($sAfterPlayerLink," ") Return $aSplit[1] EndFunc