Розділіть документи Word на кілька файлів у Python

У деяких випадках вам потрібно розділити великі документи Word, розділивши їх на менші. Ви можете розділити документ Word на сторінки, розділи або стовпці. У цій статті ви дізнаєтеся, як розділити документ Word на кілька файлів за допомогою Python. Покроковий посібник і зразки коду продемонструють, як програмним способом розділити документ Word на розділи, сторінки або діапазони сторінок.

Бібліотека Python для розділення документів MS Word

Щоб розділити документ DOCX або DOC на кілька файлів, ми використаємо Aspose.Words for Python. Це бібліотека обробки текстів для створення та обробки документів Word. Ви можете встановити його у своїх програмах Python з PyPI за допомогою такої команди pip.

pip install aspose-words 

Розбийте документ Word на розділи в Python

У більшості випадків документ Word розділений на кілька розділів за допомогою розривів розділів. Щоб зберегти кожен розділ в окремому файлі, можна розбити документ на розділи. Наступні кроки демонструють, як розділити документ Word на розділи в Python.

  • Завантажте документ Word за допомогою класу Document.
  • Зациклюйте кожен розділ у колекції Document.sections.
  • Для кожного розділу колекції виконайте такі дії:
    • Створіть новий об’єкт класу Document.
    • Очистіть стандартні розділи за допомогою методу Document.sections.clear().
    • Імпортуйте розділ у новий документ за допомогою методу Document.importnode(Section, True).assection() і отримайте повернутий розділ в об’єкті.
    • Додати повернутий розділ до колекції розділів нового документа.
    • Збережіть новий документ як файл DOCX за допомогою методу Document.save(string).

У наведеному нижче прикладі коду показано, як розділити документ Word на розділи в Python.

import aspose.words as aw

# завантажити документ Word
doc = aw.Document("document.docx")

for i in range(0, doc.sections.count) :
            
    # клонувати розділ, який потрібно розділити
    section = doc.sections[i].clone()

    # створити екземпляр класу Document для нового документа
    newDoc = aw.Document()
    
    # очистити стандартні розділи
    newDoc.sections.clear()

    # вставте розділ у новий документ
    newSection = newDoc.import_node(section, True).as_section()
    newDoc.sections.add(newSection)

    # Зберегти розділ як окремий документ
    newDoc.save(f"split_by_sections_{i}.docx")

Розбиття документа Word на сторінки в Python

Тепер давайте розглянемо, як розділити кожну сторінку документа та зберегти її як окремий файл DOCX. Нижче наведено кроки, щоб розділити документ Word на сторінки.

  • Завантажте документ Word за допомогою класу Document.

  • Отримайте кількість сторінок у документі за допомогою властивості Document.pagecount.

  • Перегляньте кількість сторінок і в кожній ітерації виконайте такі дії:

    • Витягніть сторінку в об’єкт за допомогою методу Document.extractpages(pageIndex, 1).

    • Збережіть витягнуту сторінку як файл DOCX за допомогою методу Document.save(string).

У наведеному нижче прикладі коду показано, як розділити документ Word на сторінки.

import aspose.words as aw

# завантажити документ Word
doc = aw.Document("document.docx")

# отримати кількість сторінок
pageCount = doc.page_count

# гортати сторінки
for page in range(0, pageCount):
  
    # зберегти кожну сторінку як окремий документ
    extractedPage = doc.extract_pages(page, 1)
    extractedPage.save(f"split_by_page_{page + 1}.docx")

Розділити документ Word за діапазоном сторінок у Python

Ви також можете розділити ряд сторінок у документі Word і зберегти його як окремий файл. Нижче наведено кроки для досягнення цього в Python.

  • Завантажте документ Word за допомогою класу Document.
  • Витягніть сторінки за допомогою методу Document.extractpages(int, int), де перший параметр — індекс початкової сторінки, а другий — кількість сторінок.
  • Збережіть витягнутий діапазон сторінок як файл DOCX за допомогою методу Document.save(string).

У наведеному нижче прикладі коду показано, як витягти діапазон сторінок із документа Word і зберегти його як файл DOCX.

import aspose.words as aw

# завантажити документ Word
doc = aw.Document("document.docx")

# витягти діапазон сторінок
extractedPages = doc.extract_pages(3, 6)

# зберегти сторінки як окремий документ
extractedPages.save("split_by_page_range.docx")

Отримайте безкоштовну ліцензію API

Вам цікаво спробувати Aspose.Words for Python безкоштовно? Отримайте тимчасову ліцензію, щоб уникнути обмежень оцінювання.

Висновок

У цій статті ви дізналися, як розділити документ Word на кілька документів у Python. Зразки коду продемонстрували, як розділити документ Word на розділи, сторінки або діапазон сторінок. Aspose.Words for Python також надає низку захоплюючих функцій, які ви можете дослідити за допомогою документації. Також ви можете опублікувати свої запитання на нашому форумі.

Дивись також