Sign inSign up

stackateam/flux_votes

By stackateam

Updated about 6 years ago

Image
0

158

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