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

Uploaded Python 3

File details

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

File metadata

  • Download URL: fiche_ppi-0.1.0.tar.gz
  • Upload date:
  • Size: 18.5 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.0.tar.gz
Algorithm Hash digest
SHA256 cedeadaee160cc4a5602b6214b8f539ce06c986a1faa46c3db232daf42e40086
MD5 b9771dea7636999bb7249dc5083ce210
BLAKE2b-256 a9fe8ed44bd58569b0d14218566e2e974125c3828d24abe5e7ab149cb2365aec

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fiche_ppi-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 17.6 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 15f35a8f2262dd15ec222190b00958dff10e052ce736c1a8c50c1010988c8133
MD5 60917a6a56a23212fee024ba80032d0d
BLAKE2b-256 efacb07d468ed31646414290edaafd4bda42014d99f683a17d530a5fd6251b82

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