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

python -m fiche_ppi.fiche_ppi fichier_oral.xlsx fichier_ecrit.xlsx -o fiche.xlsx

📁 Structure des fichiers d'entrée

Les fichiers Excel doivent contenir les colonnes suivantes (issues de l'export Lexicoscope) :

  • sentId, left, node, right, author, collection
  • corpusId, pubdate, publisher, pubplace, puburl
  • source_language, sourcefilename, sub_genre, title
  • type, wordsnumber, year

et les colonnes d'annotation PPI :

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

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

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.1.tar.gz (19.4 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.1-py3-none-any.whl (18.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: fiche_ppi-0.1.1.tar.gz
  • Upload date:
  • Size: 19.4 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.1.tar.gz
Algorithm Hash digest
SHA256 54f161198e3a492436c25ea97837a757417ac99077ad589c71e308efc418e7e2
MD5 b59773951738b11bde322d90defe4497
BLAKE2b-256 3553d2600c819478842832713973a911467e7b52a88eaadc3817d9e5f8941a81

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fiche_ppi-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 18.5 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 926d04c6635d2dd4b37510d7df2b6788eda26bc43a1136dceefbfbabec52202d
MD5 83303c894636c6953f93dd6b40d32daf
BLAKE2b-256 5d90fd1e802e7d1e5eef8109955e591cf8f075322a995160fe15fde86a4699f8

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