Analitzadors

Analitzadors

API interna — Les classes d’aquesta pàgina s’utilitzen internament per la canalització de conversió de documents. La majoria dels desenvolupadors interactuen amb Document.save() i Document.get_text() en canvi. Vegeu Gestió del nucli per a l’API pública.

Aspose.Words FOSS for Python inclou analitzadors especialitzats que extreuen dades estructurades dels internals de DOCX. El NumberingParser gestiona les definicions de numeració de llistes, i StyleParser extreu els estils del document.


Analitzador de numeració

NumberingParser llegeix les definicions de numeració d’un paquet DOCX i les exposa a través d’una API de consultes. Utilitzeu parse_numbering_part() per carregar l’XML de numeració i, a continuació, consulteu les propietats de la llista amb mètodes d’ajuda.

MètodeDescripció
NumberingParser.parse_numbering_part()Analitza l’element de numeració DOCX
NumberingParser.get_list_info()Obté informació sobre una llista específica per ID
NumberingParser.get_level_info()Obté detalls del nivell d’una llista a una profunditat determinada
NumberingParser.is_ordered_list()Comprova si un nivell de llista és ordenat o amb pics
NumberingParser.get_start_value()Obté el número d’inici d’un nivell de llista
NumberingParser.get_delimiter()Obté la cadena delimitadora d’un nivell de llista

Analitzador d’estils

StyleParser analitza els noms d’estil en objectes estructurats ParsedStyle. Identifica encapçalaments, cites en bloc, blocs de codi i paràgrafs de llista a partir dels noms d’estil DOCX.

MètodeDescripció
StyleParser.parse()Analitza un nom d’estil en un objecte ParsedStyle
StyleParser.get_style_chain()Analitza una cadena de noms d’estil per a estils heretats
StyleParser.is_setext_heading()Comprova si un estil és un encapçalament d’estil Setext
StyleParser.extract_all_styles()Extreu noms d’estil individuals d’una cadena separada per comes

Model de dades de numeració

Les dades de numeració analitzades s’emmagatzemen en objectes estructurats:

ClasseDescripció
NumberingInfoDefinició de numeració amb num_id, abstract_num_id i levels
NumberingLevelDefinició de nivell amb propietats format, start i text
ListInfoInformació sobre una instància de llista específica
ListLevelInfoDetalls de formatació específics del nivell

Consells i bones pràctiques

  • Crida parse_numbering_part() una vegada després de carregar un document per omplir totes les definicions de llistes
  • Utilitza is_ordered_list() per distingir les llistes numerades de les llistes amb vinyetes
  • Utilitza get_style_chain() per analitzar les cadenes d’estil heretades en una sola crida
  • Els parsers de numeració i d’estil s’utilitzen internament al pipeline de conversió de documents

Problemes comuns

ProblemaCausaSolució
Definicions de numeració buidesEl document no té llistesComproveu el valor de retorn de get_list_info() abans d’accedir a les propietats
Estil absentEl nom de l’estil no es reconeixUtilitzeu parse() amb un nom d’estil conegut
Nivell de llista incorrecteParàmetre de nivell incorrecteEls nivells de llista són indexats des de zero

Resum de la referència API

Classe / MètodeDescripció
NumberingParser.parse_numbering_part()Analitza les definicions de numeració DOCX
NumberingParser.get_list_info()Consulta la informació de la llista per ID
NumberingParser.is_ordered_list()Comprova si un nivell de llista està ordenat
StyleParser.parse()Analitza un nom d’estil en informació estructurada
StyleParser.get_style_chain()Analitza una cadena de noms d’estil heretats
NumberingInfoModel de dades de definició de numeració
NumberingLevelDefinició de nivell amb format i valor inicial
 Català