[..] Copier vidéo youtube pour les mettre sur son site.

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
smarty
Niveau 1
Niveau 1
Messages : 8
Enregistré le : sam. 01 janv. 2011 20:07
Status : Hors ligne

[..] Copier vidéo youtube pour les mettre sur son site.

#1

Message par smarty »

Bonjour,
tout d'abord, Bonne Année 2011 ! :D

Je voulais savoir si c'étais possible de mettre au point un tel script, dans le but de mettre à jours son site régulièrement et en finir avec la routine !
Je suis encore qu'un débutant, mais je pense que cela n'est pas aussi simple à faire.

Objectif:
1 - Lire les liens dans lesquels le script va travailler, attendre le chargement des pages.
2 - Copier le code qui permet d'intégrer une vidéo sur son site. ( Qui doit être sous cette forme <object width="480" height="385">........</object> )
3 - Le coller dans des pages html dans un endroit bien précis, les nommer et les enregistrer.

Pour commencer, j'aimerai en parler pour comprendre les difficultés qui risquent de poser problème,
et si c'est possible de s'en servir comme un couteaux suisse, que ça ne soit pas forcément youtube, mais pour copier des informations sur d'autres sites.

Il est vrai qu'il est un peu complexe, donc je vais m'arrêter là, mais ça serait formidable d'avoir un script capable de faire toutes ces opérations.

N'hésitez pas si vous avez des idées intéressantes, ou si vous connaissez quelques liens pratiques pour en apprendre plus.

Cordialement,
Smarty
Modifié en dernier par smarty le sam. 01 janv. 2011 21:40, modifié 2 fois.
Avatar du membre
bloodwolff
Membre émérite
Membre émérite
Messages : 655
Enregistré le : ven. 18 avr. 2008 22:36
Localisation : Québec
Status : Hors ligne

Re: [..] Copier vidéo youtube pour les mettre sur son site.

#2

Message par bloodwolff »

Totalement faisable mais il manque des détails ! Je te le ferai avec plaisirs
Compte skype : bloodwolfff
smarty
Niveau 1
Niveau 1
Messages : 8
Enregistré le : sam. 01 janv. 2011 20:07
Status : Hors ligne

Re: [..] Copier vidéo youtube pour les mettre sur son site.

#3

Message par smarty »

J'imagine le script de la sorte :

- L’exécuter = une fenêtre qui s'ouvre et qui me demande l'adresse du fichier liens.txt qui contient liens, avec chiffre au début de chaque lien, exemple :
001 http://www.monsite.fr/page01.html
002 http://www.monsite.fr/video_test_01.html
ou l'ouverture d'une fenêtre qui donne possibilité de les coller directement dans un champs spécifique, et un bouton pour l'exécuter ...

1er Partie
- Après exécution, le script devra lire les liens un par un, donc il va devoir copier la 1er page, réf. 001 ( à l'aide de la numérotation dans le fichier liens.txt ), et ouvrir le 1er lien

2eme Partie
- J'ai réaliser un site de teste pour effectuer nos essais http://autoitest.comli.com/
Vous avez remarqué que la vidéo met du temps pour démarrer, donc on doit penser à ajouter des conditions => on ne copie pas si la vidéo n'existe pas ou si la page ne s'est pas chargé, sinon on copie le lien qui nous intéresse comme le montre la 2eme vidéo du site http://autoitest.comli.com/
On va supposer que les vidéos convoités sont tous situés dans un endroit fixe
Je suis incapable de donner plus de détails sur le fonctionnement de l'opération, car je suis encore qu'un simple débutant...

3eme partie La plus compliqué !
Elle consiste à ouvrir un fichier en html, grâce à notepad++ et coller les données à l'intérieur.
- On va supposer que toutes mes pages en html si situes dans mon bureau, dans un dossier appelé ' html '
Le mieux, si c'est possible, est de nous donner la possibilité de choisir le dossier ou se situe nos fichier en html
- les pages seront nommées de cet façon :
exemplepage001.html
exemplepage002.html etc...
1 - la première chose à faire est d'ouvrir avec notepad++ la 1er page exemplepage001.html
2 - Dans exemplepage001.html, il y aura un endroit dans lequel le script doit coller le lien de la vidéo, pour nous facilité la tâche, on lui donnera le numéro de la ligne, on va lui demander que pour telle ligne tu colleras cela...
3 - pour finir, enregistrer les modification, CTRL+S

Maintenant, je me demande comment passer de exemplepage001.html à exemplepage002.html ?
On a une boucle for avec un système qui nous permet de lire les variables, dans notre cas ce sont les numéros de page qui change...
Le script doit faire le tour de tout les fichier qui sont dans le dossier html, on doit compter le nombre de fichier que contient le dossier, et avec cela on pourra en déduire le nombre total des page en html.
Pour finir, on aura toujours des conditions à faire, si le dossier existe, t'en mieux ! sinon on renvoie une erreur...


Voilà, à mon avis j'ai un peu exagéré sur les détails, mais bon, c'est mieux que rien...
J'espère que vous serez nombreux à m'aider dans ce projet.
Merci d'avance !
smarty
Niveau 1
Niveau 1
Messages : 8
Enregistré le : sam. 01 janv. 2011 20:07
Status : Hors ligne

Re: [..] Copier vidéo youtube pour les mettre sur son site.

#4

Message par smarty »

bloodwolff a écrit :Totalement faisable mais il manque des détails ! Je te le ferai avec plaisirs
J'ai trouvé un lien qui pourrait nous aider dans la partie 2, il s'agit d'un script pour récupérer des donner dans un fichier html.
il fonctionne à merveille : Bien sûr, je suis entrain de parler de ton oeuvre :wink:
http://www.autoit.fr/forum/viewtopic.php?f=3&t=6100
J'ai du mal à le modifier pour qu'il me récupère les code source de la vidéo...

Après cela j'espère trouver un moyen pour qu'il puisse lire le code source à partir d'un simple lien...
Avatar du membre
bloodwolff
Membre émérite
Membre émérite
Messages : 655
Enregistré le : ven. 18 avr. 2008 22:36
Localisation : Québec
Status : Hors ligne

Re: [..] Copier vidéo youtube pour les mettre sur son site.

#5

Message par bloodwolff »

Tu veux le code sources ou le lien du video?
Compte skype : bloodwolfff
smarty
Niveau 1
Niveau 1
Messages : 8
Enregistré le : sam. 01 janv. 2011 20:07
Status : Hors ligne

Re: [..] Copier vidéo youtube pour les mettre sur son site.

#6

Message par smarty »

ce qui m'intéresse, c'est le code pour intégrer la vidéo, il est dans le code source

Je cherche à obtenir les données de la sorte :

<OBJECT width="470" height="353"><PARAM name="movie" value="http://video.rutube.ru/fffba47427c84ba9 ... RAM><PARAM name="wmode" value="window"></PARAM><PARAM name="allowFullScreen" value="true"></PARAM><EMBED src="http://video.rutube.ru/fffba47427c84ba93ab406002b9a4df2" type="application/x-shockwave-flash" wmode="window" width="470" height="353" allowFullScreen="true" ></EMBED>
</OBJECT>
Avatar du membre
jbnh
Niveau 11
Niveau 11
Messages : 1932
Enregistré le : ven. 02 mai 2008 14:54
Localisation : Bruxelles
Status : Hors ligne

Re: [..] Copier vidéo youtube pour les mettre sur son site.

#7

Message par jbnh »

Pour ouvrir une page internet en masquée et attendre qu'elle se load -> IE.au3 rien de bien compliqué la dedans. Pour lire le code source d'une page html, de même, _IEBodyReadHTML.

Pour récupérer l'objet flash, utilisé les string, moi je ferais avec StringBetween parce que je ne maîtrise pas les StringRegExp.

Exemple :

Code : Tout sélectionner

#include <String.au3>

$string='grgergr grgregeg<OBJECT width="470" height="353"><PARAM name="movie" value="http://video.rutube.ru/fffba47427c84ba93ab406002b9a4df2"></PARAM><PARAM name="wmode" value="window"></PARAM><PARAM name="allowFullScreen" value="true"></PARAM><EMBED src="http://video.rutube.ru/fffba47427c84ba93ab406002b9a4df2" type="application/x-shockwave-flash" wmode="window" width="470" height="353" allowFullScreen="true" ></EMBED></OBJECT>fezfezfzf fefezfz'
$flash = _StringBetween($string, '<OBJECT', 'OBJECT>')
If IsArray($flash) Then
    $string = '<object' & $flash[0] & 'object>'
    msgbox(0,"erreur",$string)
    
Else
    msgbox(0,"erreur","aucun objet flash trouvé")
Endif
 
Balise [..] devant votre requête en cours, [R] quand résolu | Pas de message concernant les bots !

Merci
smarty
Niveau 1
Niveau 1
Messages : 8
Enregistré le : sam. 01 janv. 2011 20:07
Status : Hors ligne

Re: [..] Copier vidéo youtube pour les mettre sur son site.

#8

Message par smarty »

merci jbnh pour ton aide.
comme je n'ai quelques heures d'XP sur autoit, je ne saurai pas faire grand chose de ce code... pour l'instant : )

J'ai trouvé un code qui pourrait nous être utile, j'ai du mal à l'adapter :?

Code : Tout sélectionner

#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <IE.au3>

Opt("GUIOnEventMode", 1)

$fenetre = GUICreate("Connexion à autoitest.comli.com", 793, 574, 193, 115)
GUISetOnEvent($GUI_EVENT_CLOSE, "fenetre_fermer")
$oIE = ObjCreate("Shell.Explorer.2")
$oIE_ctrl = GUICtrlCreateObj($oIE, 8, 8, 778, 556)
GUISetState(@SW_SHOW)

Connexion("toto", "123456789")

While 1
    Sleep(100)
WEnd

Func fenetre_fermer()
    Exit
EndFunc

Func Connexion($sLogin, $sPswd)

    _IENavigate($oIE, "http://www.autoitest.comli.com/", 0)
    Do
        Sleep(100)
    Until $oIE.Busy = False

        Sleep(250)
        Do
            Sleep(100)
        Until $oIE.Busy = False


            $source_htnl = _IEDocReadHTML($oIE)

            $Time_Regex = StringRegExp($source_htnl, "(<OBJECT.*?)<", 3)
            If Not @error Then
                $Temps = $Time_Regex[0]
            Else
                $Temps = "erreur en parsant la date"
            EndIf

            $LastVisit_Regex = StringRegExp($source_htnl, "(<PARAM.*?)<", 3)
            If Not @error Then
                $derniere_visite = $LastVisit_Regex[0]
            Else
                $derniere_visite = "erreur en parsant la date de dernière visite"
            EndIf


            MsgBox(64, "Transfert réussi", "On a : " & $Temps & @CRLF & $derniere_visite)



EndFunc
Avatar du membre
timmalos
Niveau 11
Niveau 11
Messages : 1970
Enregistré le : dim. 18 mai 2008 15:16
Status : Hors ligne

Re: [..] Copier vidéo youtube pour les mettre sur son site.

#9

Message par timmalos »

Sinon, pourquoi ne pas faire ceci en PHP plutot?
On renseigne juste l'url de youtube en parametre à la page, celui ci va lire la page, recupere les informations avec un simple Regexp et l'insere dans la page html et hop youtube est sur votre site.
vous pouvez même choisir la couleur du cadre etc... comme je le fais sur mon site :

http://malossane.fr/videos-safety
(Petite vidéo de sécurité routière regardez et honnetement celle ci est efficace)
smarty
Niveau 1
Niveau 1
Messages : 8
Enregistré le : sam. 01 janv. 2011 20:07
Status : Hors ligne

Re: [..] Copier vidéo youtube pour les mettre sur son site.

#10

Message par smarty »

Pourquoi pas
J'ai fais une recherche rapide dans certains forums et je n'ai pas réussi à trouver un code approprié
ce serait vraiment sympa de ta part si tu pouvais le code Regex :)
smarty
Niveau 1
Niveau 1
Messages : 8
Enregistré le : sam. 01 janv. 2011 20:07
Status : Hors ligne

Re: [..] Copier vidéo youtube pour les mettre sur son site.

#12

Message par smarty »

timmalos a écrit :Utilise directement l'API de youtube :

http://code.google.com/intl/fr/apis/you ... e_php.html
Oui, mais mon but principal est de pouvoir copier n'importe quel vidéo, que sa soit sur youtube, dailymotion, ou autre ...
Et c'est pour cela que j'ai besoin de copier le code source, car tous les hébergeurs partagent leurs vidéos avec un code qui commence par <OBJECT et qui se termine par </OBJECT>
Avatar du membre
bloodwolff
Membre émérite
Membre émérite
Messages : 655
Enregistré le : ven. 18 avr. 2008 22:36
Localisation : Québec
Status : Hors ligne

Re: [..] Copier vidéo youtube pour les mettre sur son site.

#13

Message par bloodwolff »

Ce n'est pas simplement les code sources des videos qui commencent par <object et finissent par </object> dans un site web , faire un code polyvalent qui fonctionne systématiquement sur tout les sites me semblent durement réalisable car ils ne sont pas codé de la même manière. Je verrais plus un truc du genre , le video est sur youtube alors je fais-ci , il est sur dailymotion alors je fais ça , etc :roll:
Compte skype : bloodwolfff
smarty
Niveau 1
Niveau 1
Messages : 8
Enregistré le : sam. 01 janv. 2011 20:07
Status : Hors ligne

Re: [..] Copier vidéo youtube pour les mettre sur son site.

#14

Message par smarty »

Je vais essayer de voir sa ce week-end dès que j'aurai un peu temps ...
Répondre