Analyseurs

Analyseurs

API interne — Les classes sur cette page sont utilisées en interne par le pipeline de conversion de documents. La plupart des développeurs interagissent avec Document.save() et Document.get_text() à la place. Voir Gestion du noyau pour l’API publique.

Aspose.Words FOSS for Python inclut des analyseurs spécialisés qui extraient des données structurées des éléments internes du DOCX. Le NumberingParser gère les définitions de numérotation des listes, et le StyleParser extrait les styles du document.


Analyseur de numérotation

NumberingParser lit les définitions de numérotation d’un package DOCX et les expose via une API de requête. Utilisez parse_numbering_part() pour charger le XML de numérotation, puis interrogez les propriétés de la liste avec les méthodes d’assistance.

MéthodeDescription
NumberingParser.parse_numbering_part()Analyser l’élément de numérotation DOCX
NumberingParser.get_list_info()Obtenir des informations sur une liste spécifique par ID
NumberingParser.get_level_info()Obtenir les détails du niveau d’une liste à une profondeur donnée
NumberingParser.is_ordered_list()Vérifier si un niveau de liste est ordonné ou à puces
NumberingParser.get_start_value()Obtenir le numéro de départ d’un niveau de liste
NumberingParser.get_delimiter()Obtenir la chaîne de délimiteur d’un niveau de liste

Analyseur de style

StyleParser analyse les noms de styles en objets structurés ParsedStyle. Il identifie les titres, les citations, les blocs de code et les paragraphes de listes à partir des noms de styles DOCX.

MéthodeDescription
StyleParser.parse()Analyser un nom de style en un objet ParsedStyle
StyleParser.get_style_chain()Analyser une chaîne de noms de style pour les styles hérités
StyleParser.is_setext_heading()Vérifier si un style est un en‑tête de style Setext
StyleParser.extract_all_styles()Extraire les noms de style individuels d’une chaîne séparée par des virgules

Modèle de données de numérotation

Les données de numérotation analysées sont stockées dans des objets structurés :

ClasseDescription
NumberingInfoDéfinition de la numérotation avec num_id, abstract_num_id et levels
NumberingLevelDéfinition de niveau avec les propriétés format, start et text
ListInfoInformation sur une instance de liste spécifique
ListLevelInfoDétails de mise en forme spécifiques au niveau

Conseils et meilleures pratiques

  • Appelez parse_numbering_part() une fois après le chargement d’un document pour remplir toutes les définitions de listes
  • Utilisez is_ordered_list() pour distinguer les listes numérotées des listes à puces
  • Utilisez get_style_chain() pour analyser les chaînes de styles héritées en un seul appel
  • Les analyseurs de numérotation et de style sont utilisés en interne par le pipeline de conversion de documents

Problèmes courants

ProblèmeCauseCorrection
Définitions de numérotation videsLe document ne contient aucune listeVérifiez la valeur de retour de get_list_info() avant d’accéder aux propriétés
Style manquantNom du style non reconnuUtilisez parse() avec un nom de style connu
Niveau de liste incorrectParamètre de niveau incorrectLes niveaux de liste sont indexés à partir de zéro

Résumé de la référence API

Classe / MéthodeDescription
NumberingParser.parse_numbering_part()Analyser les définitions de numérotation DOCX
NumberingParser.get_list_info()Interroger les informations de liste par ID
NumberingParser.is_ordered_list()Vérifier si un niveau de liste est ordonné
StyleParser.parse()Analyser un nom de style en informations structurées
StyleParser.get_style_chain()Analyser une chaîne de noms de style hérités
NumberingInfoModèle de données de définition de numérotation
NumberingLevelDéfinition de niveau avec format et valeur de départ
 Français