اسناد Word را به چندین فایل در پایتون تقسیم کنید

در موارد خاص، باید اسناد Word بزرگ را با تقسیم آنها به اسناد کوچکتر تقسیم کنید. می توانید یک سند Word را بر اساس صفحات، بخش ها یا ستون ها تقسیم کنید. در این مقاله یاد خواهید گرفت که چگونه یک سند Word را با استفاده از پایتون به چندین فایل تقسیم کنید. راهنمای گام به گام و نمونه کد نشان می دهد که چگونه می توان یک سند Word را بر اساس بخش ها، صفحات یا محدوده صفحات به صورت برنامه ریزی شده تقسیم کرد.

کتابخانه پایتون برای تقسیم اسناد MS Word

برای تقسیم یک سند DOCX یا DOC به چندین فایل، از Aspose.Words برای Python استفاده می کنیم. این یک کتابخانه پردازش کلمه برای ایجاد و دستکاری اسناد Word است. می توانید آن را در برنامه های پایتون خود از PyPI با استفاده از دستور pip زیر نصب کنید.

pip install aspose-words 

یک سند ورد را بر اساس بخش در پایتون تقسیم کنید

در بیشتر موارد، سند Word با استفاده از بخش‌های شکسته به چند بخش تقسیم می‌شود. برای ذخیره هر بخش در یک فایل جداگانه، می توانید سند را به بخش تقسیم کنید. مراحل زیر نحوه تقسیم یک سند Word را بر اساس بخش در پایتون نشان می دهد.

  • سند Word را با استفاده از کلاس Document بارگیری کنید.
  • هر بخش را در مجموعه Document.sections حلقه کنید.
  • برای هر بخش از مجموعه، مراحل زیر را انجام دهید:
    • یک شی جدید از کلاس Document ایجاد کنید.
    • بخش های پیش فرض را با استفاده از روش ()Document.sections.clear پاک کنید.
    • با استفاده از روش Document.importnode(Section, True).assection، بخش را به سند جدید وارد کنید و بخش بازگشتی را در یک شی دریافت کنید.
    • بخش بازگشتی را به مجموعه بخش های سند جدید اضافه کنید.
    • با استفاده از روش Document.save(string) سند جدید را به عنوان فایل DOCX ذخیره کنید.

نمونه کد زیر نحوه تقسیم یک سند Word بر اساس بخش در پایتون را نشان می دهد.

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()

    # بخش inster به سند جدید
    newSection = newDoc.import_node(section, True).as_section()
    newDoc.sections.add(newSection)

    # بخش را به عنوان یک سند جداگانه ذخیره کنید
    newDoc.save(f"split_by_sections_{i}.docx")

تقسیم یک سند Word بر اساس صفحات در پایتون

حال، بیایید نگاهی به نحوه تقسیم هر صفحه از سند و ذخیره آن به عنوان یک فایل 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 تقسیم کرده و آن را به عنوان یک فایل جداگانه ذخیره کنید. مراحل زیر برای دستیابی به این امر در پایتون آورده شده است.

  • سند Word را با استفاده از کلاس Document بارگیری کنید.
  • صفحات را با استفاده از روش Document.extractpages(int, int) استخراج کنید که پارامتر اول شاخص صفحه شروع و پارامتر دوم تعداد صفحات است.
  • با استفاده از روش Document.save(string) محدوده صفحه استخراج شده را به عنوان فایل DOCX ذخیره کنید.

نمونه کد زیر نحوه استخراج طیف وسیعی از صفحات از یک سند 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 را برای پایتون به صورت رایگان امتحان کنید؟ برای اجتناب از محدودیت‌های ارزیابی، [مجوز موقت دریافت کنید].

نتیجه

در این مقاله، نحوه تقسیم یک سند Word به چندین سند در پایتون را یاد گرفتید. نمونه‌های کد نشان داده‌اند که چگونه می‌توان یک سند Word را بر اساس بخش‌ها، صفحات یا محدوده صفحه تقسیم کرد. Aspose.Words برای Python همچنین تعدادی ویژگی هیجان انگیز را ارائه می دهد که می توانید با استفاده از [مستند] کاوش کنید. همچنین، شما می توانید سوالات خود را به [تالار گفتمان] ما ارسال کنید.

همچنین ببینید