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&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