yTube - Simple Youtube Player

« Older   Newer »
  Share  
CAT_IMG Posted on 9/7/2013, 12:12     +1   +1   -1

Luigi Verzě - Sviluppatore Web

Group:
Member
Posts:
1,286
Reputazione:
+3
Location:
Catania

Status:


Sa5qvt0
yTube
Simple Youtube Player



Versione: 1.0
Descrizione: Un leggero e veloce youtube player da desktop.
Screenshoot:
Codice:
CODICE
#cs ----------------------------------------------------------------------------

AutoIt Version: 3.3.8.1
Author:         Luigi96

#ce ----------------------------------------------------------------------------

#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <GuiListView.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <ListViewConstants.au3>
#include <Inet.au3>
#include <String.au3>

Global $id[100]

$oIE = ObjCreate("Shell.Explorer.2")
$yTube = GUICreate("yTube - Simple Youtube Player", 557, 488, 228, 231, $WS_MAXIMIZEBOX + $WS_SIZEBOX + $WS_SYSMENU)
GUISetBkColor(0x000000)
GUICtrlCreatePic(@ScriptDir&"\ico\yt_logo.jpg", 8, 8, 57, 57)
GUICtrlSetResizing(-1, $GUI_DOCKLEFT+$GUI_DOCKTOP+$GUI_DOCKSIZE)
$search_t = GUICtrlCreateInput("", 73, 8, 409, 57)
GUICtrlSetResizing(-1, $GUI_DOCKLEFT+$GUI_DOCKTOP+$GUI_DOCKRIGHT+$GUI_DOCKHEIGHT)
GUICtrlSetFont(-1, 34, 800, 0, "Bebas Neue")
GUICtrlSetColor(-1, 0x800000)
$search_b = GUICtrlCreateButton("Cerca video", 488, 8, 62, 57, $BS_ICON)
GUICtrlSetResizing(-1,$GUI_DOCKRIGHT+$GUI_DOCKTOP+$GUI_DOCKSIZE)
GUICtrlSetImage(-1, @ScriptDir&"\ico\search.ico", "")

;LISTVIEW
$listview = GUICtrlCreateListView("ID|Titolo|Durata|Data Caricamento|Visualizzazioni", 8, 72, 540, 360)
GUICtrlSetResizing(-1, $GUI_DOCKLEFT+$GUI_DOCKRIGHT+$GUI_DOCKTOP+$GUI_DOCKBOTTOM)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 0, 25)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 1, 185)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 2, 60)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 3, 110)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 4, 80)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 5, 100)


$watch = GUICtrlCreateButton("Guarda video", 7, 433, 542,24)
GUICtrlSetResizing(-1, $GUI_DOCKLEFT+$GUI_DOCKRIGHT+$GUI_DOCKbottom+$GUI_DOCKHEIGHT)

;ObJECT VIDEO
$video = GUICtrlCreateObj($oIE, 8, 72, 540, 382)
GUICtrlSetState(-1, $GUI_HIDE)
GUICtrlSetResizing(-1, $GUI_DOCKLEFT+$GUI_DOCKRIGHT+$GUI_DOCKTOP+$GUI_DOCKBOTTOM)


GUISetState(@SW_SHOW)
cerca(0)

While 1
       $nMsg = GUIGetMsg()
       Switch $nMsg
               Case $GUI_EVENT_CLOSE
                       Exit
               Case $search_b
                       If GUICtrlRead($search_t) <> "" Then
                               $oIE.navigate("")
                               GUICtrlSetState($video, $GUI_HIDE)
                               GUICtrlSetState($listview, $GUI_SHOW)
                               GUICtrlSetState($watch, $GUI_SHOW)
                               cerca(GUICtrlRead($search_t))
                       EndIf
               Case $watch
                       $list = GUICtrlRead(GUICtrlRead($listview))
                       If StringInStr($list , "|") <> 0 Then
                               $stringa = GUICtrlRead(GUICtrlRead($listview))
                               $idn = StringLeft($stringa,StringInStr($stringa, "|")-1)
                               GUICtrlSetState($listview, $GUI_HIDE)
                               GUICtrlSetState($watch, $GUI_HIDE)
                               GUICtrlSetState($video, $GUI_SHOW)
                               $oIE.navigate("http://www.youtube.com/v/"&$id[StringFormat("%d", $idn)]&"?version=3&amp;hl=it_IT")
                       Else
                               MsgBox(64,"yTube - Info", "Devi selezionare un video dalla lista per poterlo guardare")
                       EndIf
       EndSwitch
WEnd

Func cerca($valore)
       If $valore == 0 Then
               $source = _InetGetSource("http://www.youtube.com/channel/HCDjU9URR35hw")
       Else
               $source = _InetGetSource("http://www.youtube.com/results?search_query="&$valore)
       EndIf
       Local $aArray = _StringBetween($source, 'data-context-item-title="', '"')
       Local $dArray = _StringBetween($source, 'data-context-item-time="', '"')
       If $valore == 0 Then
               Local $cArray = _StringBetween($source, 'content-item-time-created" title="', '"')
       Else
               Local $cArray = _StringBetween($source, '</a></li><li>', '</li><li>')
       EndIf
       Local $vArray = _StringBetween($source, 'data-context-item-views="', '"')
       Local $iArray = _StringBetween($source, 'data-context-item-id="', '"')
       
       Local $titolo[100]
       Local $durata[100]
       Local $carica[100]
       Local $upload[100]
       Local $views[100]
       
       If $aArray == 0  Then
               MsgBox(64,"yTube - Info","La ricerca di '"&$valore&"' non ha portato risultati")
               return 1
       EndIf
       _GUICtrlListView_DeleteAllItems($listview)
       
       $i = 0
       For $element In $aArray
               $i+=1
               $titolo[$i] = StringRegExpReplace($element, "[|]", "-")
       Next
       $i = 0
       If $dArray <> 0  Then
               For $element In $dArray
                       $i+=1
                       $durata[$i] = $element
               Next
       EndIf
       $i = 0
       If $cArray <> 0  Then
               For $element In $cArray
                       $i+=1
                       $carica[$i] = $element
               Next
       EndIf
       $i = 0
       If $vArray <> 0  Then
               For $element In $vArray
                       $i+=1
                       $views[$i] = $element
               Next
       EndIf
       $i = 0
       If $iArray <> 0  Then
               For $element In $iArray
                       $i+=1
                       $id[$i] = $element
               Next
       EndIf
       For $ix = 1 To $i Step 1
               GUICtrlCreateListViewItem($ix&"|"&$titolo[$ix]&"|"&$durata[$ix]&"|"&$carica[$ix]&"|"&$views[$ix], $listview)
       Next
       return 1
EndFunc


Edited by ×Luigi96× - 9/7/2013, 14:17

Download attachment
yTube.rar ( Number of downloads: 53 )

 
Web  Contacts  Top
0 replies since 9/7/2013, 12:12   159 views
  Share