Je suis abonné à arretsurimages mais je n'ai pas le plugin flash. C'est un peu génant pour accéder au contenu.

J'ai donc cherché à comprendre comment visualiser les vidéos (merci wireshark).

Rapidement, @si utilise le prestataire externe kewego.

Le lecteur flash télécharge alors un fichier du type : "http://video.arretsurimages.net/api_server/?action=get_external_player_config&sig=ID&lg=fr", avec ID le numéro d'identification de la vidéo (par exemple sur cette vidéo d'utilité publique). Ce fichier contient différentes informations (comme l'url de téléchargement de la vidéo).

J'ai donc créer 2 scripts greasemonkey permettant d'accéder aux vidéos.

Le premier script permettant de remplacer la vidéo flash en lien vers l'url donné précédement. Le second script permet de mettre en forme la fenêtre de propriété.

Au passage, j'ai mis un lien vers la vidéo sur kewego. Il est alors possible de voir combien de fois la vidéo a été regardé (par exemple).

  • Le fichier asi.user.js :
// ==UserScript==
// @name          @si
// @namespace     http://gnunux.info/
// @description   Access @si video properties
// @include       http://arretsurimages.net/contenu.php?id=*
// @include       http://www.arretsurimages.net/contenu.php?id=*
// ==/UserScript==


var as = document.getElementsByTagName('object');
asl = as.length;
if ( asl != 0 )
{
        for(var i = 0; i < asl; ++i) {
                asi=as[i].getElementsByTagName('param');
                id=asi[0].value.substring(52,asi[0].value.length-16);
                as[i].innerHTML='<a href="http://video.arretsurimages.net/api_server/?action=get_external_player_config&sig='+id+'&lg=fr">Accéder à la vidéo</a>';
        }
} else {
        var as = document.getElementsByTagName('b');
        asl=as.length;
        for(var i = 0; i < asl; ++i) {
                if (as[i].id) {
                        id=as[i].id.substring(2,as[i].id.length);
                        as[i].innerHTML='<a href="http://video.arretsurimages.net/api_server/?action=get_external_player_config&sig='+id+'&lg=fr">Accéder à la vidéo</a>';
                }
        }
}
  • Le fichier asivideo.user.js :
// ==UserScript==
// @name          @si video
// @namespace     http://gnunux.info/
// @description   Access @si video properties
// @include       http://video.arretsurimages.net/api_server/*
// ==/UserScript==

function return_value(search) {
        searchl=search.length;
        beg=document.body.innerHTML.indexOf(search+'=');
        fin=document.body.innerHTML.length;
        rep=document.body.innerHTML.substring(beg+searchl+1,fin);
        finsup=rep.indexOf('<');
        fine=rep.indexOf('&');
        if (fine){
                if ( finsup < fine ){
                        fin=finsup;
                } else {
                        fin=fine;
                }
        }
        return rep.substring(0,fin);
}
thumb=return_value('THUMBNAIL');
title=return_value('TITLE');
link=return_value('FILE');
id=return_value('VIDEO_ID');
video='http://video.arretsurimages.net/swf/p.swf?lg=fr&sig='+id;
document.body.innerHTML=
content='<h1>'+title+'</h1><p><img src="'+thumb+'" /></p>';
content=content+'<p><object><embed type="video/x-flv" src="'+link+'" width="320" height="295" showcontrols="1" showstatusbar="0" showdisplay="0" autostart="0"></embed></object></p>';
content+='<p><a href="'+video+'">Le lecteur flash</a> : <a href="'+link+'">Lien vers la video</a> : <a href="http://www.kewego.fr/video/'+id+'.html>Le lien kewego</a></p>';
document.body.innerHTML=content;

Si vous rencontrez des problèmes, n'hésitez pas à mettre un commentaire.

Mise à jour : mise à jour ici.