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()iDocument.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ètode | Descripció |
|---|---|
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ètode | Descripció |
|---|---|
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:
| Classe | Descripció |
|---|---|
NumberingInfo | Definició de numeració amb num_id, abstract_num_id i levels |
NumberingLevel | Definició de nivell amb propietats format, start i text |
ListInfo | Informació sobre una instància de llista específica |
ListLevelInfo | Detalls 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
| Problema | Causa | Solució |
|---|---|---|
| Definicions de numeració buides | El document no té llistes | Comproveu el valor de retorn de get_list_info() abans d’accedir a les propietats |
| Estil absent | El nom de l’estil no es reconeix | Utilitzeu parse() amb un nom d’estil conegut |
| Nivell de llista incorrecte | Paràmetre de nivell incorrecte | Els nivells de llista són indexats des de zero |
Resum de la referència API
| Classe / Mètode | Descripció |
|---|---|
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 |
NumberingInfo | Model de dades de definició de numeració |
NumberingLevel | Definició de nivell amb format i valor inicial |