Page 1 sur 2

[R] Contrôle sur une vidéo en streaming

Posté : mar. 05 mai 2009 11:40
par JIF
Bonjour a vous, voila j'aimerais savoir quelle est le code de programation pour que mon script autoit controle une vidéo en streaming a partir d'une page web (par éxemple dans mon cas un le site web est blogspot). J'aimerais donc savoir quand ma vidéo a finit de se telecharchez completemant sur mon ordinateur (windows XP pro) ?
Et en l'ocurence des que ma vidéo à fini d'etre telecharger sur mon pc passer à la suite d'éxecution de mon script.

Merci de me répondre.

Re: [..] Contrôle sur une vidéo en streaming

Posté : mer. 06 mai 2009 17:08
par jbnh
Salut, bon puisque personne à l'air bien chaud je me lance :p

Quand tu regardes un streaming sur internet, tu la download fatalement sur ton pc, et la plupart du temps dans le dossier temp.

Une idée serait donc de checker toutes les x secondes la taille du fichier en question sur ton DD, le plus difficile étant de trouver le nom sous lequel elle est enregistrée. Il y a moyen de le savoir en regardant le fichier source de la page internet (et elles sont toujours en format flv.)

On fait donc une boucle de vérification de la taille de fichier avec filegetsize et une condition pour savoir si le check 2 > check 1 (dans ce cas on continue) et ainsi de suite jusqu'à ce que check2 = check 1

Voià, bonne chance

Re: [..] Contrôle sur une vidéo en streaming

Posté : mer. 06 mai 2009 17:41
par orax
Sur quel(s) navigateur(s) voulez-vous faire cela ?

Re: [..] Contrôle sur une vidéo en streaming

Posté : mer. 06 mai 2009 20:44
par JIF
Sur mozila firfox.
Jbnh pourais tu me precisé se code (comment il fonctionne exactement) Pour le nom du fichier et la vidéo en flv dans le fichier temp eureusemant c'est pas un problème pour mon niveau ^^.

Re: [..] Contrôle sur une vidéo en streaming

Posté : mer. 06 mai 2009 21:14
par jbnh
Re

Ca donnerai qqchose ainsi :

Code : Tout sélectionner

dim $1, $2

$path = @tempdir&"\video.flv"

While 1

$1 &= FileGetSize ($path)
sleep(2000)
$2 &= FileGetSize ($path)

If $1 > $2 then

Continueloop

elseif $1 = $2 then

exitloop

Endif


Wend

Re: [..] Contrôle sur une vidéo en streaming

Posté : mer. 06 mai 2009 23:15
par orax
Visiblement le fichier semble être enregistré sous un nom du style : fla446A.tmp dans @tempdir donc à mon avis, impossible de récupérer son nom exact, à moins peut-être de prendre le dernier fichier modifié ayant un nom en flaXXXX.tmp.

Re: [..] Contrôle sur une vidéo en streaming

Posté : jeu. 07 mai 2009 15:08
par jbnh
Tout dépend si le fichier tmp, lors du dl, grandit... il est alors possible d'exectuer mon code.

Re: [..] Contrôle sur une vidéo en streaming

Posté : ven. 08 mai 2009 10:44
par JIF
re bonjour, merci de ton code jbnh mais apré l'avoir essayé il semblerai que j'ai du malle a le fair fonctioné. Le nom de ma vidéo en streaming ne change pas voici le code avec lequel j'ai fait l'éssais

Code : Tout sélectionner

dim $1, $2

$path = @tempdir&"\3670.flv"

While 1

$1 &= FileGetSize ($path)
sleep(180000)
$2 &= FileGetSize ($path)

If $1 > $2 then

Continueloop

elseif $1 = $2 then

exitloop

Endif
MouseClick("left", 361, 393, 1)                               ; Vidéo 2
sleep(5000)
MouseClick("left", 531, 826, 1)
sleep(1000)
MouseClick("left", 847, 826, 1)
sleep(120000)
MouseClick("left", 734, 824, 1)
sleep(5000)

Wend

 
merci de me répondre.

Re: [..] Contrôle sur une vidéo en streaming

Posté : ven. 08 mai 2009 12:17
par tolf
@JIF : Pourquoi faire un sleep(180000) = 3 minutes !?
De plus, vous avez mis le contrôle de la vidéo à l'intérieur de la boucle :roll: ==> il faut le faire une fois sorti de la boucle sinon ça n'a pas d'intérêt

@jbnh : Je ne vois pas l'intérêt de faire

Code : Tout sélectionner

$1 [color=#FF0000]&=[/color] FileGetSize ($path)
Voici le bon code a mon avis :

Code : Tout sélectionner

$path = @TempDir & "\3670.flv"
$taille = FileGetSize($path)

Do
    $taille = FileGetSize($path)
    Sleep(2000)
Until FileGetSize($path) = $taille

MouseClick("left", 361, 393, 1) ; Vidéo 2
Sleep(5000)
MouseClick("left", 531, 826, 1)
Sleep(1000)
MouseClick("left", 847, 826, 1)
Sleep(120000)
MouseClick("left", 734, 824, 1)
Sleep(5000)

Re: [..] Contrôle sur une vidéo en streaming

Posté : ven. 08 mai 2009 14:31
par JIF
Merci tolf de ta réponse, mais semblerais t-il que le code de programation que tu ma donné ne fonctionne pas. Car les comande du moosclic se lence directement même quand la vidéo n'est pas chargé. ce que je cherche a fair c'est éffectué ces mousclck une foit que la vidéo a terminé de chargé. Les moouc clic sont la pour passé a la page de la 2ième vidéo et enssuite relencé le controle mai pour la 2ième vidéo enssuite denouveau des mousclick avec des coordoné x est y différente pour passé a la vidéo 3 et refair la manipulation infiniment dans une boucle sachant que au bout de de la dernière vidéo je puisse me deconécté de la live boxe et me reconécté pour changer d'ip sen qu'il est de controle vidéo pendant la fasse de déconnection/reconnection de la live boxe. Apré sa la boucle repart a 0.
Merci de m'aidez.

Re: [..] Contrôle sur une vidéo en streaming

Posté : ven. 08 mai 2009 15:49
par Iste
Ben, si sont script fonctione bien, vu qu'il lance les mouseclic si la taille du fichier change pas, ben si la video n'est pas en train de charger, ca les lance !

Perso, je rajouterais une condition du type

Code : Tout sélectionner

Until (FileGetSize($path) = $taille) AND (FileGetSize($path) > 1024)
peut etre aussi une autre pour vérifier qu'il soit pas trop grand avant de commencer a regarder, au cas ou le script détecterai un autre fichier déja chargé

Edit : ou bien comme ceci, affin de ne lancer le script qu'en cas de DL flagrant !ù

Code : Tout sélectionner

$path = @TempDir & "\3670.flv"
$taille = FileGetSize($path)

Do
    $taille = FileGetSize($path)
    Sleep(2000)
Until FileGetSize($path) <> $taille

Do
    $taille = FileGetSize($path)
    Sleep(2000)
Until FileGetSize($path) = $taille

MouseClick("left", 361, 393, 1) ; Vidéo 2
Sleep(5000)
MouseClick("left", 531, 826, 1)
Sleep(1000)
MouseClick("left", 847, 826, 1)
Sleep(120000)
MouseClick("left", 734, 824, 1)
Sleep(5000)

Re: [..] Contrôle sur une vidéo en streaming

Posté : ven. 08 mai 2009 18:14
par JIF
Iste a écrit :Ben, si sont script fonctione bien, vu qu'il lance les mouseclic si la taille du fichier change pas, ben si la video n'est pas en train de charger, ca les lance !

Perso, je rajouterais une condition du type

Code : Tout sélectionner

Until (FileGetSize($path) = $taille) AND (FileGetSize($path) > 1024)
peut etre aussi une autre pour vérifier qu'il soit pas trop grand avant de commencer a regarder, au cas ou le script détecterai un autre fichier déja chargé

Edit : ou bien comme ceci, affin de ne lancer le script qu'en cas de DL flagrant !ù

Code : Tout sélectionner

$path = @TempDir & "\3670.flv"
$taille = FileGetSize($path)

Do
    $taille = FileGetSize($path)
    Sleep(2000)
Until FileGetSize($path) <> $taille

Do
    $taille = FileGetSize($path)
    Sleep(2000)
Until FileGetSize($path) = $taille

MouseClick("left", 361, 393, 1) ; Vidéo 2
Sleep(5000)
MouseClick("left", 531, 826, 1)
Sleep(1000)
MouseClick("left", 847, 826, 1)
Sleep(120000)
MouseClick("left", 734, 824, 1)
Sleep(5000)
Sa ne fonctionne toujours pas cette foie si les mousclick ne s'éffectu même pas.
Help me.

Re: [..] Contrôle sur une vidéo en streaming

Posté : ven. 08 mai 2009 19:16
par Iste
Ben, le truc c'est que nous on fait ca a l'aveugle...
Faudrait nous décrir le comportement du streaming

Il crée un nouveau fichier ?
La taille du fichier augmente ?

Re: [..] Contrôle sur une vidéo en streaming

Posté : ven. 08 mai 2009 20:26
par JIF
Bun en fait voila le code complé actuélemant

Code : Tout sélectionner


#NoTrayIcon
HotKeySet("{F2}","My_Exit")                                 ; Fonction de fermetur du script

While 1
    Sleep(1000)
    ConsoleWrite("Ok"&@CRLF)                                 ; Boucle 1
    
MouseClick("left", 155, 1009, 1)
sleep(5000)
MouseClick("left", 240, 100, 1)
sleep(5000)

MouseClick("left", 531, 826, 1)                               ; Vidéo 1
sleep(1000)
MouseClick("left", 847, 825, 1)
sleep(40000)
MouseClick("left", 734, 824, 1)
sleep(5000)

MouseClick("left", 361, 393, 1)                               ; Vidéo 2
sleep(5000)
MouseClick("left", 531, 826, 1)
sleep(1000)
MouseClick("left", 847, 826, 1)
sleep(120000)
MouseClick("left", 734, 824, 1)
sleep(5000)

MouseClick("left", 358, 410, 1)                               ; Vidéo 3
sleep(5000)
MouseClick("left", 531, 857, 1)
sleep(1000)
MouseClick("left", 848, 858, 1)
sleep(40000)
MouseClick("left", 734, 856, 1)
sleep(5000)

MouseClick("left", 356, 426, 1)                                ; Vidéo 4
sleep(5000)
MouseClick("left", 530, 824, 1)
sleep(1000)
MouseClick("left", 847, 825, 1)
sleep(70000)
MouseClick("left", 734, 824, 1)
sleep(5000)

MouseClick("left", 352, 440, 1)                                 ; Vidéo 5
sleep(5000)
MouseClick("left", 530, 826, 1)
sleep(1000)
MouseClick("left", 847, 825, 1)
sleep(40000)
MouseClick("left", 734, 824, 1)
sleep(5000)

WinClose("[REGEXPTITLE:Mozilla Firefox]", "")                   ; Déconnection/Reconnection  live box
sleep(3000)
MouseClick("left", 155, 1008, 1)
sleep(5000)
MouseClick("left", 336, 99, 1)
sleep(5000)
MouseClick("left", 939, 256, 1)
sleep(5000)
MouseClick("left", 748, 709, 1)
sleep(15000)
MouseClick("left", 748, 710, 1)
sleep(15000)
WinClose("[REGEXPTITLE:Livebox-950c]", "")
sleep(5000)
WEnd                                                            ; Fin de la voucle 1
Func My_Exit()                                                  ; Fin de la fonction de fermetur du script
    Exit 0
EndFunc

 

Ce que j'aimrais ces que lorsque je vais me conécté a mon sit et que je lence la visualisation de ma vidéo (a l'aide des mouclick) il y est un controle de téléchagement de mes vidéos. ces a dire, comme vous le voyer dans mon script complet il y a a 5 reprise des lomp temp d'attente avec de fort sleep du genre : 40 000, 120 000, 40 000, 70 000, 40 000.
Actuélement ces les temps pour que mes vidéo soit charger sur mon pc. J'ai monté le temp de transfert des vidéo trés haut afain d'évité le moindre bug de ralentissement de conéction internet. Mes vidéo dure facilement 6 minute voir 8 minute pour celle qui a le sleep 120 000.

Par éxemple actuélement pour la vidéo qui dure 8 minute, au bout de 2 minute maximum est saura deja charger sur mon pc et je vais avencé le curceur de defilement de la vidéo plus vite. Ce qui fait que la au lieu que ma vidéo sont compté comme vu toute les 8 minute elle les que de 2 minutes. Mais je pert énormémant de temps car en moyen san perturbation elle peus ce charger en même pas 1 minute 10, mais comme vous la savais bien, il y a toujours des perturbation internet défoit ma vidéo se chargera plus vite d'autre foit beaucoup plus lentement.
Donc je voudrai par exemple qu'il ets un comntrole de vidéo par éxemple la vidéo 2 c'ets finit de se teleharger sur mon pc en 1 minute 15, le script unefoit la vidéo charger passe le mouclick ver lafin de la vidéo et ma vidéo a étai compté comme vue en 1 minute 15, ma vidéo peut tres bien avoir fini de ce telecrger en 1 minut 30 par la suite la fonction serai la même au bout de 1 minute 30 quand la vidéo a fint d echarger on avence la vidéo. Mes vidualisation ne seron donc plus a temps fix mais vriron selon mon debit internet. Et en gros je produiré beaucoupplus d evisualisation que actuelement.

J'espére que après ce long discourt vous pourais m'aidez.

Re: [..] Contrôle sur une vidéo en streaming

Posté : ven. 08 mai 2009 23:47
par Iste
C'est bien bô mais tout cela ne répond pas a la question.
Je (nous?) veux uniquement savoir comment se comporte le fichier temporaire
Apres le reste... pas important

(et svp, faite un petit effort de relecture ^^')

[R] Contrôle sur une vidéo en streaming

Posté : sam. 09 mai 2009 15:50
par JIF
Le fichier temporaire est une vidéo en flv qui a toujour le même titre et qui a toujour la même taille. Le fichie est télecharger a partir d'un serveur dons je ne suis pas le propriétaire. le fichier est vue en sreeming sur mon écrant a partir d'un lien exportable (en flash), le fichier n'utilise nulement le moteur des lecteur exportable du type Windows, Dalimotion, You tube.

En ésperant que cette présision vous permétras de m'aidé.

Re: [..] Contrôle sur une vidéo en streaming

Posté : sam. 09 mai 2009 16:30
par tolf
Iste a écrit :et svp, faite un petit gros effort de relecture ^^' :roll: :roll:
Et le nombre et la qualité des réponses s'en fera sentir !
JIF a écrit :J'espére que après ce long discourt vous pourais m'aidez.
Iste a écrit :C'est bien bô mais tout cela ne répond pas a la question.
+1
JIF a écrit :Le fichier temporaire est une vidéo en flv qui a toujour le même titre et qui a toujour la même taille.
Pourquoi n'utilisez-vous pas ce titre et cette taille dans votre script ??
AutoIt n'a pas pour unique fonction le MouseClick !!

Et pourquoi n'utilisez-vous pas les réponses précédentes, à savoir quelque chose comme ça dans votre script :

Code : Tout sélectionner

Do
    $taille = FileGetSize($path)
    Sleep(2000)
Until FileGetSize($path) <> $taille

Re: [..] Contrôle sur une vidéo en streaming

Posté : sam. 09 mai 2009 17:34
par JIF
Je comprends pas, j'ai tout essayé et les mousclick ce lence au bout du sleep 2000, il n'y a pas de contrôl d'aprés ce que je vois, ou le contrôl est mal interprété. Pour la taile de la vidéo en Mo, je vois pas ou la métre dans le script et le titre je les déjas mis, mais sa ne marche pas.

voici le lien : de mon site a ouvrir avec mozila firfox

Suprimé par JIF

sur ce sit il y a toutes mes vidéos.

Re: [..] Contrôle sur une vidéo en streaming

Posté : sam. 09 mai 2009 20:14
par jbnh
Le fichier temporaire est une vidéo en flv qui a toujour le même titre et qui a toujour la même taille.
Pourquoi n'utilisez-vous pas ce titre et cette taille dans votre script ??
Justement si il a toujours la même taille on ne peut faire aucune comparaison...

Re: [..] Contrôle sur une vidéo en streaming

Posté : sam. 09 mai 2009 20:36
par Iste
Qui a toujours la meme taille ?
Ou qui ne change pas de taille pendant son chargement ?
Car ca me parrait un peu etrange, meme si j'ai déja vu ca.