Le petit journal du pr0n: l'esclave des amazones numériques (et de marc dorcel..)
Le petit journal du pr0n
Informations et actualités cinématographiques
2009
21:04
Absentéismes à l’Assemblée Nationale

En regardant le site des Godillots, je me demandais si c’était possible de récupérer en direct les informations sur le site de l’Assemblée Nationale sans trop se prendre la tête (sans passer 2h sur un #$* parsing par exemple).

Une constatation, le site ne permet pas d’avoir, d’un seul bloc, les informations relatives aux interventions séances et commissions, les propositions de lois, etc… d’un simple coup d’oeil. Et on comprendrait pourquoi: on constaterait assez rapidement que beaucoup serait proche du zéro.

Voici donc un script écrit à l’arrache pour récupérer ce genre d’info pour l’ensemble des députés de l’Assemblée Nationale.


#!/bin/bash
# License BSD - Benjamin GIGON / Prae

function get_info {
    local DEPUTEID=$1
    local DOCTYPE=$2
    lynx -source  »http://recherche2.assemblee-nationale.fr/resultats_tribun.jsp?id_auteur=${DEPUTEID}&legislature=13&typedoc=${DOCTYPE} »  \
        | grep ’<span class= »nbres »>’ \
        | html2text \
        | sed ’s/^[[:space:]]*\(.*\)[[:space:]]*$/\1/’ \
        | sed -e  »s/ /+/g » \
        | bc
}
function get_listing {
    lynx  »http://www.assemblee-nationale.fr/13/tribun/xml/liste_alpha.asp » -dump \
        | grep  »fiches_id » \
        | awk ’{ print $2 }’ 
}
function get_name {
    local DEPUTEID=$1
    lynx -source  »http://www.assemblee-nationale.fr/13/tribun/fiches_id/${DEPUTEID}.asp » \
        | grep -rs  »<title> » \
        | awk -F’:' ’{ print $2 }’ \
        | html2text
}

echo  »;ID;Nom Depute;Interventions Seances;Interventions Commissions;         Rapports Informations;Propositions Lois; » 2> /dev/tty
echo  »Nombre total:`get_listing | wc -l` » 1> /dev/tty 
get_listing | while read LINK;
do
    DEPUTE_ID=`basename $LINK .asp`;
    DEPUTE_NAME=`get_name ${DEPUTE_ID}`
    INTERVENTION_SEANCES=`get_info  »${DEPUTE_ID} »  »ComptesRendusIntegraux »`
    INTERVENTION_COMMISSIONS=`get_info  »${DEPUTE_ID} »  »ComptesRendusReunions »`
    RAPPORTS_INFO=`get_info  »${DEPUTE_ID} »  »Rapports »`
    PROPOSITIONS_LOIS=`get_info  »${DEPUTE_ID} »  »PropositionsLoi »`
    echo  »;${DEPUTE_ID};${DEPUTE_NAME};${INTERVENTION_SEANCES};        &nbsp${INTERVENTION_COMMISSIONS};${RAPPORTS_INFO};${PROPOSITIONS_LOIS}; » 2> /dev/tty

    let index=${index}+1;
    printf  »Processing: #%d\r » ${index} 1> /dev/tty
done;

Je vous recommande de télécharger le script ici: Download


Utilisation simpliste, il suffit de lancer le script comme-cela:

$ ./get_deputes_listing.sh > listing.csv

L’output sur le canal de sortie « normal » est le contenu CSV, vous pourrez l’importez dans OpenOffice sans difficulté (il suffit juste de prendre comme caractère de séparation, le point virgule et encodage ISO-8859-1). En output terminal, vous aurez des informations sur le processing en cours.

Côté Terminal:

$ ./get_deputes_listing.sh > listing.csv
Nombre total:577
Processing: #7

Côté fichier CSV:

$ cat /tmp/listing.csv
;ID;Nom Depute;Interventions Seances;Interventions Commissions;Rapports Informations;Propositions Lois;
;226; M. Jean-Pierre Abelin;7;2;2;11;
;267457; M. Élie Aboud;10;4;;39;
;230; M. Bernard Accoyer;2;17;1;3;
;267695; Mme Patricia Adam;14;24;1;23;
;236; M. Manuel Aeschlimann;9;3;2;28;
;243; M. Yves Albarello;21;34;2;50;
;253; M. Alfred Almont;9;14;4;38;


Un petit output des députés de l’Assemblée Nationale pour Avril 2009: Download

Vos commentaires
5 commentaire(s)

Comments

  • nabal dit :

    Bonjour,

    Je trouve sympa l’idée de ce script. Des amis ont eu l’idée de pouvoir en afficher des stats sur une page Web mais ne se sentent pas l’âme de faire des pages WEB :P.
    J’ai récupéré une sortie de votre script et en a fait une page de « test » pour ces stats http://nabal.dakara.fr/phpcharts/st...
    Ce n’est qu’un début. Il nous faut juste réfléchir sur ce qui serait intéressant de croiser et d’afficher. Peut être que l’on en fera quelque chose de bien :)
    En tout cas, c’est votre script qui nous en a donné l’idée.

  • Benjamin dit :

    Great les stats vizu web :-)

  • z dit :

    Hello,

    c’est bien sympa comme idée, mais justement ceux qui ont créé deputesgodillots.info ont créé un nouveau site qu’ils lancent aujourd’hui : http://www.nosdeputes.fr qui justement récupère toutes les informations du site de l’assemblée nationale et les présente de manière utilisable et compréhensive ;) Il ne fait pas que ça, mais pour le reste je vous conseille d’aller y faire un tour !

  • Benjamin dit :

    Z: oui, je suis au courant;
    Pour avoir été plusieurs fois à l’assemblée avec Benjamin & Co (deputesgodillots). je suis leurs travaux de loin.
    Pour ce qui est du script, il date depuis avril, donc. (et je me demande s’il marche encore tiens …)

  • nzo dit :

    Sinon pour contribuer un peu, je ne propose pas de scripts pour m’occuper des députés, mais un kit de construction pour fabriquer sa home guillotine ;)… Trêve de boutades, le script est bien venu.

  • Laisser un commentaire

    *