Projet d'extraction des informations des candidatures online pour les places d'apprentissage à l'EPFL.
Suivant la structure de fichiers suivantes
.
├── Electroniciens
├── EmployesCommerce
├── GardiensAnimaux
├── Informaticiens
│ ├── 2016-11-26_08-27-39_email
│ └── 2016-12-13_11-03-32_email
│ ├── annexes
│ │ ├── annexe1.pdf
│ │ ├── annexe2.pdf
│ │ ├── carte-identite.jpeg
│ │ ├── curriculum-vitae.pdf
│ │ ├── lettre-motivation.pdf
│ │ ├── photo-passeport.jpeg
│ │ └── Thumbs.db
│ └── informations
│ └── informations.json
├── Logisticiens
└── Polymecaniciens
Où, par niveau :
- Niv1 : Type d'apprentissage; Electroniciens, EmployesCommerce, etc...
- Niv2 : Dossier par candidature (note: le même candidat peux avoir plusieurs dossiers)
- Niv3a :
annexes; une liste de documents soumis par le candidat - Niv3b :
informations: contient le fichierinformations.jsonavec les données de la candidature
Le script permet de parser les informations contenue dans les fichiers informations.json de chaque candidatures.
- Récupère les données
informations.jsonpour les mettre dansAllIn.json - Crèe un fichier html par type de métier (jquery + datatable)
- Pour les informaticiens, upload les données dans un google spreadsheet (
push_to_gs.js)
Pour les fichiers HTML soient portables, utiliser:
echo "data:image/jpeg;base64,$(base64 DSC_0251.JPG)"
dans la balise src de l'imgage, e.g.
<img src=""data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAA4KCw0L[...]AFqLPzY" alt="mon image" />
- Copier le dossier
validespour - ou du moins s'assurer de - le rendre accessible au scriptapp.js - Lancer le script :
node app.js - Metter à jour
AllIn.jsonpuis les différents fichiers html générés dans./results - Utiliser
push_to_gs.jspour mettre à jour le google spreadsheet
- https://developers.google.com/identity/protocols/OAuth2
- https://console.developers.google.com/apis/library (Check that it's the user you want)
- Click sheets apis
- Créer un projet
- Activer le projet
- Créer les identifiants 1. API: Google Sheets API 1. Plate-forme: Autre plate-forme avec interface utilisateur 1. Accès: Données utilisateur
- Créer un ID client (OAuth), e.g. CanAppClient
- Configurer l'écran d'autorisation OAuth (email@epfl + Nom de produit (i.e. Can APP))
- Télécharger les identifiants (fichier client_id.json, à placer dans le dossier de l'application)