In alcuni casi, è necessario dividere i documenti Word di grandi dimensioni suddividendoli in documenti più piccoli. Puoi dividere un documento di Word per pagine, sezioni o colonne. In questo articolo imparerai come dividere un documento Word in più file usando Python. La guida dettagliata e gli esempi di codice dimostreranno come dividere un documento di Word per sezioni, pagine o intervalli di pagine a livello di codice.
- Libreria Python per dividere documenti MS Word
- Dividi un documento di Word per sezioni
- Suddivisione di un documento di Word per pagine
- Dividi un documento di Word per un intervallo di pagine
Libreria Python per dividere documenti MS Word
Per dividere un documento DOCX o DOC in più file, useremo Aspose.Words for Python. È una libreria di elaborazione testi per creare e manipolare documenti Word. Puoi installarlo nelle tue applicazioni Python da PyPI usando il seguente comando pip.
pip install aspose-words
Dividi un documento di Word per sezioni in Python
Nella maggior parte dei casi, il documento di Word è suddiviso in più sezioni mediante interruzioni di sezione. Per salvare ogni sezione in un file separato, puoi dividere il documento per sezioni. I passaggi seguenti mostrano come dividere un documento di Word per sezioni in Python.
- Carica il documento di Word usando la classe Document.
- Passa in rassegna ogni sezione nella raccolta Document.sections.
- Per ciascuna sezione della raccolta, attenersi alla seguente procedura:
- Crea un nuovo oggetto della classe Document.
- Cancella le sezioni predefinite usando il metodo Document.sections.clear().
- Importa la sezione nel nuovo documento usando il metodo Document.importnode(Section, True).assection() e ottieni la sezione restituita in un oggetto.
- Aggiungi la sezione restituita alla raccolta di sezioni del nuovo documento.
- Salva il nuovo documento come file DOCX utilizzando il metodo Document.save(string).
L’esempio di codice seguente mostra come dividere un documento di Word per sezioni in Python.
import aspose.words as aw
# load Word document
doc = aw.Document("document.docx")
for i in range(0, doc.sections.count) :
# clone the section to split
section = doc.sections[i].clone()
# create an instance of Document class for new doucment
newDoc = aw.Document()
# clear the default sections
newDoc.sections.clear()
# inster section into new document
newSection = newDoc.import_node(section, True).as_section()
newDoc.sections.add(newSection)
# Save section as a separate document
newDoc.save(f"split_by_sections_{i}.docx")
Dividere un documento di Word per Pages in Python
Ora, diamo un’occhiata a come dividere ogni pagina del documento e salvarla come file DOCX separato. Di seguito sono riportati i passaggi per dividere un documento di Word per pagine.
Carica il documento di Word usando la classe Document.
Ottieni il conteggio delle pagine nel documento utilizzando la proprietà Document.pagecount.
Scorri il conteggio delle pagine e in ogni iterazione, esegui i seguenti passaggi:
Estrarre la pagina in un oggetto utilizzando il metodo Document.extractpages(pageIndex, 1).
Salva la pagina estratta come file DOCX utilizzando il metodo Document.save(string).
Nell’esempio di codice seguente viene illustrato come dividere un documento di Word per pagine.
import aspose.words as aw
# load Word document
doc = aw.Document("document.docx")
# get page count
pageCount = doc.page_count
# loop through pages
for page in range(0, pageCount):
# save each page as a separate document
extractedPage = doc.extract_pages(page, 1)
extractedPage.save(f"split_by_page_{page + 1}.docx")
Dividi un documento di Word per un intervallo di pagine in Python
Puoi anche dividere un intervallo di pagine in un documento di Word e salvarlo come file separato. Di seguito sono riportati i passaggi per ottenere ciò in Python.
- Carica il documento di Word usando la classe Document.
- Estrarre le pagine utilizzando il metodo Document.extractpages(int, int) dove il primo parametro è l’indice della pagina iniziale e il secondo è il numero di pagine.
- Salva l’intervallo di pagine estratte come file DOCX utilizzando il metodo Document.save(string).
Nell’esempio di codice seguente viene illustrato come estrarre un intervallo di pagine da un documento di Word e salvarlo come file DOCX.
import aspose.words as aw
# load Word document
doc = aw.Document("document.docx")
# extract range of pages
extractedPages = doc.extract_pages(3, 6)
# save pages as a separate document
extractedPages.save("split_by_page_range.docx")
Ottieni una licenza API gratuita
Sei interessato a provare Aspose.Words per Python gratuitamente? Ottieni una licenza temporanea per evitare limitazioni di valutazione.
Conclusione
In questo articolo, hai imparato come dividere un documento Word in più documenti in Python. Gli esempi di codice hanno dimostrato come dividere un documento di Word per sezioni, pagine o un intervallo di pagine. Aspose.Words per Python fornisce anche una serie di interessanti funzionalità che puoi esplorare usando la documentazione. Inoltre, puoi pubblicare le tue domande nel nostro forum.