Sign inSign up

stackateam/flux_votes

By stackateam

•Updated about 6 years ago

Image
0

159

stackateam/flux_votes repository overview

alt text

⁠FLUX d'ingestion des Votes (Assemblée nationale)

(Documentation générale: https://bitbucket.org/stackadoc/index/src/master/README.md⁠)

Source de données:

Votes au format JSON: http://data.assemblee-nationale.fr/travaux-parlementaires/votes⁠

Fréquence des mises à jour:

Recherche de modifications toutes les 15 secondes (basée sur md5 générée puis enregistrée sur S3)

INDEX:

type:

  • vote_an

Version

1

surchage de type

  • pour_code --------------> liste de codes d'élus PAXXXX ayant voté POUR
  • contre_code ------------> "....................................." CONTRE
  • nombre_votants ---------> numeric
  • suffrages_exprimes -----> numeric
  • suffrage_requis --------> numeric
  • demandeur_vote ---------> Président du groupe "de la Gauche démocrate et républicaine"
  • sort_vote_libelle -----> adopté ou rejeté
  • sort_vote_code --------> rejeté
  • type_vote ------------> scrutin public ordinaire; majorité absolue des suffrages exprimés
⁠Description:
  • Scrapping de la checksum MD5 du fichier source.
  • Si la MD5 a changée, telechargement du fichier et génération de la liste md5list.txt.
  • Importation des nouveaux votes.
  • Sauvegarde de la MD5 globale.

Le flux nécéssite deux fichiers sauvegardés sur S3 pour fonctionner, ils sont présents dans le bucket: votes-flux
Dans le bucket votes-flux se trouvent les deux fichers:

  • md5.txt contient la checksum hébergée par le site data.assemblee-nationale.fr (contient initialement l'objet python "")

  • md5list.txt contient les noms des fichiers-votes. (contient initialement l'objet python {}, puis {'VTANR5L15V1556.json', 'VTANR5L15V1056.json', ...)

Le point d'entrée de l'image docker est import_votes.py et les fonctions utiles aux traitements sont contenues dans /utils/flux.py

⁠Requis :

env.list ou variables d'envionement contenant:


ELASTIC_ID=
ELASTIC_PSSWD=
AWS_ACCESS_KEY_ID = 
AWS_SECRET_ACCESS_KEY =
⁠Lancement de l'image
nohup sudo docker run --env-file ./env.list stackateam/flux_votes:latest > flux.txt &
⁠En prod ...

Sur une instance EC2 AWS linux, t2.micro

Tag summary

Content type

Image

Digest

Size

432.7 MB

Last updated

about 6 years ago

docker pull stackateam/flux_votes