Skip to main content

Generate PPI sheets from Excel templates

Project description

Générateur de Fiches PPI

Générateur de fiches PPI (Phrases Préfabriquées des Interactions) à partir de grilles d'analyse de PPI pré-remplies.

📋 Description

Cet outil permet de générer automatiquement des fiches d'analyse PPI à partir de paires de grilles Excel (oral/écrit) pré-remplies. Les fiches produites suivent la grille d'analyse développée dans le cadre du projet ANR PREFAB et résument certaines informations pour faciliter la saisie des fiches finales.

Les fonctionnalités principales :

  • Mode simple : génération d'une fiche à partir d'une paire de fichiers (oral + écrit)
  • Mode batch : génération de plusieurs fiches à partir d'un dossier contenant des paires de fichiers *_Or.xlsx / *_Ph.xlsx
  • Interface graphique intuitive (Tkinter)
  • Formatage automatique des cellules (gras, couleurs, tags XML)

🚀 Installation

Depuis PyPI (recommandé)

pip install fiche-ppi

Depuis les sources

git clone https://github.com/yourusername/fiche-ppi.git
cd fiche-ppi
pip install -e .

Dépendances

  • Python ≥ 3.8
  • pandas ≥ 1.5.0
  • numpy ≥ 1.24.0
  • requests ≥ 2.28.0
  • beautifulsoup4 ≥ 4.12.0
  • ppi_analyser (dépendance interne)

Note : Sur Linux, tkinter peut nécessiter l'installation d'un paquet système :

sudo apt-get install python3-tk   # Debian/Ubuntu
sudo dnf install python3-tkinter  # Fedora

💻 Utilisation

Interface graphique

Lancez l'interface graphique :

fiche-ppi-gui

Mode graphique - Onglet Simple

  1. Sélectionnez le fichier oral (*_Or.xlsx)
  2. Sélectionnez le fichier écrit (*_Ph.xlsx)
  3. Le chemin de sortie est automatiquement généré (modifiable)
  4. Cliquez sur "⚡ Générer la fiche"

Mode graphique - Onglet Batch

  1. Sélectionnez un dossier contenant des paires de fichiers
  2. Les paires *_Or.xlsx / *_Ph.xlsx sont automatiquement détectées
  3. Cliquez sur "⚡ Générer toutes les fiches"

Ligne de commande

fiche-ppi [-h] [-o OUTPUT] [--batch DOSSIER] [file_oral] [file_ecrit]

Génère une fiche PPI consolidée à partir de deux fichiers Excel.

positional arguments:
  file_oral             Fichier Excel oral (.xlsx)
  file_ecrit            Fichier Excel écrit (.xlsx)

options:
  -h, --help            show this help message and exit
  -o OUTPUT, --output OUTPUT
                        Fichier de sortie (mode simple ; défaut : <stem>_fiche.xlsx).
  --batch DOSSIER       Traite toutes les paires *_Or.xlsx / *_Ph.xlsx du dossier.

📁 Structure des fichiers d'entrée

Les fichiers Excel doivent contenir les colonnes suivantes :

  • Lemme, Forme PPI, Acception, Type de phrase
  • Modalité d'énonciation, Expansion, Modifieurs
  • Cooccurrents, Fonction globale, Fonctions spécifiques
  • milieu, secteur, Remarques,node

Génération des colonnes de la fiche PPI

Propriété Comment c'est généré
Fe_1a PPI Prend la valeur de la colonne Forme PPI du premier enregistrement du DataFrame combiné (oral + écrit)
Fe_1b Acception Joint les valeurs uniques non-vides de la colonne Acception (triées, séparées par ", ")
Fe_1c Variantes formelles Calcule les variantes formelles pour l'oral et l'écrit séparément :
- Extrait les modifieurs de la colonne Modifieurs
- Nettoie les tokens de modifieurs
- Applique remove_modifier() pour retirer les modifieurs de la colonne node
- Formate : \n- Oral : var1, var2\n- Écrit : var3, var4
Fe_1e Prononciation Pour le lemme (premier Lemme du DataFrame oral) :Scrape la page Wiktionary du lemme pour extraire les URLs des fichiers audio MP3 - Extrait les URLs des fichiers MP3
- Retourne une liste d'URLs séparées par des sauts de ligne
Fe_2a Statut syntaxique phrase Joint les valeurs uniques de la colonne Type de phrase
Fe_2c Modalité de phrase Joint les valeurs uniques de la colonne Modalité d'énonciation
Fe_2e Expansion éventuelle Joint les valeurs uniques de la colonne Expansion
Fe_3a Fonction globale Joint les valeurs uniques de la colonne Fonction globale
Fe_3b Fonctions spécifiques Joint les valeurs uniques de la colonne Fonctions spécifiques
Fe_3c Codes Fonction globale Joint les valeurs uniques de la colonne Fonction globale (identique à Fe_3a)
Fe_3d Codes Fonctions spécifiques Joint les valeurs uniques de la colonne Fonctions spécifiques (identique à Fe_3b)
Fe_3f Structure interactionnelle Pour l'oral, l'écrit et le combiné :
- Calcule les fréquences des colonnes Déclenchement, Portée, Position
- Formate : Oral :\n\t- Déclenchement : val1 (n), val2 (n)\n\t- Portée : ...
Fe_3g Contexte spécifique Joint les valeurs uniques de la colonne milieu
Fe_3h Modalité écrite et orale Joint les valeurs uniques de la colonne secteur
Fe_4a Cooccurrents privilégiés Pour l'oral, l'écrit et le combiné :
- Parse la colonne Cooccurrents
- Sépare les éléments antéposés (a) et postposés (p)
- Compte les fréquences avec Counter()
- Calcule les pourcentages d'antéposés/postposés
- Formate : Oral :\n\t- Cooccurrents antéposés (X%) : ...\n\t- Cooccurrents postposés (Y%) : ...
Fe_4b Modifieurs de la PPI Joint les valeurs uniques de la colonne Modifieurs
Fe_9a Remarques Joint les valeurs uniques de la colonne Remarques

Normalisation des données d'entrée

L'outil procède à une normalisation de certaines valeurs afin d'obtenir des calculs corrects, ex. ante:mais--> mais (a); post:mais --> mais (p) Un minimum de normalisation est toutefois attendu.

Contrôle d'intégrité

L'outil affiche des avertissements lorsque des lignes vides sont détectées: ex. [warn] [Oral] Portée (33) ≠ Position (34) — ligne(s) incomplète(s) [warn] [Écrit] Portée (44) ≠ Position (43) — ligne(s) incomplète(s)


LIDILEM · ANR PREFAB

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fiche_ppi-0.1.2.1.tar.gz (19.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fiche_ppi-0.1.2.1-py3-none-any.whl (18.8 kB view details)

Uploaded Python 3

File details

Details for the file fiche_ppi-0.1.2.1.tar.gz.

File metadata

  • Download URL: fiche_ppi-0.1.2.1.tar.gz
  • Upload date:
  • Size: 19.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.2

File hashes

Hashes for fiche_ppi-0.1.2.1.tar.gz
Algorithm Hash digest
SHA256 3676beba60dca8033f1b316a2e5f2c9893649242603d6c9fae8490da410f704d
MD5 00abf33263833b34405a86ff681f7ce9
BLAKE2b-256 2f069c9e1f628b2a2327be5267d7d26b538faa044f0d83e70bd6961e2f97ef87

See more details on using hashes here.

File details

Details for the file fiche_ppi-0.1.2.1-py3-none-any.whl.

File metadata

  • Download URL: fiche_ppi-0.1.2.1-py3-none-any.whl
  • Upload date:
  • Size: 18.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.2

File hashes

Hashes for fiche_ppi-0.1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f9c76fa05547bd19d2f97f60bd1fa10470e89e51aac0aa74b3c1a382264cc715
MD5 8a37d23847eccf7152593b689fa4b47d
BLAKE2b-256 45ef376ebeab33c1eafdaf55c9e86c9b94f24c7bff6324c44cf35cc0b9ef592c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page