استخراج متن ساده از فایلهای PDF یک نیاز مکرر برای تحلیل دادهها، ایندکسگذاری جستجو و مهاجرت محتوا است. Aspose.PDF for Python via .NET یک SDK قدرتمند ارائه میدهد که تبدیل PDF به TXT را در پایتون آسان میکند. در این راهنما شما یاد خواهید گرفت که چگونه کتابخانه را تنظیم کنید، یک مثال کامل کد را مرور کنید، گزینههای پیکربندی را بررسی کنید و بهترین شیوهها را برای استخراج متن کارآمد و قابل اعتماد اعمال کنید.
مراحل استخراج متن از PDF در Python
- نصب Aspose.PDF SDK: از pip برای افزودن کتابخانه به محیط خود استفاده کنید.
pip install aspose-pdf
- وارد کردن کلاسهای مورد نیاز: کلاسهای Document و TextAbsorber را به اسکریپت خود اضافه کنید.
import aspose.pdf as ap
- PDF سند را بارگذاری کنید: یک شیء Document ایجاد کنید که به فایل منبع شما اشاره میکند.
doc = ap.Document("sample.pdf")
- استخراج متن با TextAbsorber: یک TextAbsorber را مقداردهی اولیه کنید، اجازه دهید تمام صفحات را پردازش کند و متن را بازیابی کنید.
absorber = ap.TextAbsorber()
doc.pages.accept(absorber)
extracted_text = absorber.text
کلاس TextAbsorber ویژگیهایی برای رمزگذاری و حفظ چیدمان فراهم میکند.
- متن استخراجشده را در یک فایل TXT ذخیره کنید: رشته را با استفاده از UTF‑8 روی دیسک بنویسید تا کاراکترهای ویژه دست نخورده بمانند.
with open("output.txt", "w", encoding="utf-8") as txt_file:
txt_file.write(extracted_text)
تبدیل PDF به TXT با استفاده از Aspose.PDF - مثال کامل کد
مثال زیر یک پیادهسازی حداقل، انتها‑به‑انتها را نشان میدهد که میتوانید آن را برای پروژههای خود تنظیم کنید.
import aspose.pdf as ap
def convert_pdf_to_txt(input_path: str, output_path: str):
# Load the PDF document
document = ap.Document(input_path)
# Create a TextAbsorber to extract text
absorber = ap.TextAbsorber()
document.pages.accept(absorber)
# Retrieve the extracted text
text = absorber.text
# Write the text to a .txt file using UTF‑8 encoding
with open(output_path, "w", encoding="utf-8") as file:
file.write(text)
if __name__ == "__main__":
# Example usage
convert_pdf_to_txt("sample.pdf", "sample.txt")
توجه: این مثال کد عملکرد اصلی را نشان میدهد. قبل از استفاده از آن در پروژه خود، مطمئن شوید مسیرهای فایل (
sample.pdf,sample.txt) را به مکانهای واقعی خود بهروزرسانی کنید، اطمینان حاصل کنید تمام وابستگیهای مورد نیاز بهدرستی نصب شدهاند، و بهطور کامل در محیط توسعه خود تست کنید. اگر با مشکلی مواجه شدید، لطفاً به مستندات رسمی مراجعه کنید یا برای دریافت کمک به تیم پشتیبانی مراجعه کنید.
نصب و پیکربندی Aspose.PDF for Python via .NET
SDK بهصورت بسته PyPI توزیع میشود. آخرین نسخه را از مخزن رسمی دانلود کنید و با pip نصب کنید.
pip install aspose-pdf
شما میتوانید wheel را مستقیماً از صفحه دانلود دریافت کنید. این کتابخانه به Python 3.6 یا بالاتر و یک لایسنس معتبر Aspose برای استفاده در تولید نیاز دارد.
پیکربندی گزینههای استخراج برای PDF به TXT
فرآیند استخراج را با تنظیم ویژگیهای زیر بهدقت تنظیم کنید:
- رمزگذاری -
absorber.text_encodingرا تنظیم کنید تا مجموعه کاراکترهای خاص را مدیریت کند.
absorber.text_encoding = "utf-8"
- Page Range - استخراج را به زیرمجموعهای از صفحات محدود کنید تا عملکرد بهبود یابد.
absorber.page_start = 1
absorber.page_end = 5
- حفظ چیدمان - اگر نیاز به حفظ ساختار ستونها دارید،
absorber.extract_textرا با حفظ چیدمان فعال کنید.
absorber.extract_text = True
این گزینهها بخشی از کلاس TextAbsorber در مرجع API هستند.
بهترین روشها برای تبدیل PDF به TXT در Python
- بهصورت افزایشی پردازش PDFهای بزرگ - استخراج صفحات بهصورت دستهای بهجای بارگذاری کل سند در حافظه.
- از رمزگذاری UTF‑8 استفاده کنید - همیشه فایلهای خروجی را با UTF‑8 بنویسید تا از از دست رفتن کاراکترها جلوگیری شود، بهویژه برای PDFهای چندزبانه.
- اعتبارسنجی فایلهای ورودی - بررسی کنید که PDF قبل از استخراج رمزگذاری نشده باشد؛ در صورت نیاز
PdfPasswordExceptionرا مدیریت کنید. - آزادسازی منابع - اگرچه جمعکننده زباله پایتون بیشتر اشیاء را مدیریت میکند، اما پس از اتمام بهصورت صریح جریانهای فایل را ببندید.
- ثبت نتایج استخراج - تعداد صفحات پردازششده و هر هشدار را ثبت کنید تا به رفع اشکال و نظارت کمک کند.
نتیجهگیری
تبدیل PDF به TXT در پایتون به سادگی انجام میشود با Aspose.PDF for Python via .NET. SDK میتواند طرحهای پیچیده، کاراکترهای یونیکد و اسناد بزرگ را مدیریت کند و در عین حال کنترل دقیق از طریق API خود ارائه دهد. پس از نصب بسته و پیروی از راهنمای گامبهگام، میتوانید استخراج متن قابل اعتماد را در هر برنامه پایتون یکپارچه کنید. بهخاطر داشته باشید که برای استفاده در محیط تولید، باید یک لایسنس مناسب تهیه کنید؛ میتوانید صفحه صفحه قیمتگذاری را برای گزینهها مرور کنید و یک مجوز موقت برای ارزیابی SDK قبل از تعهد دریافت کنید.
سوالات متداول
چگونه میتوانم PDF را به TXT در Python با استفاده از Aspose.PDF تبدیل کنم؟
از کلاس Document برای بارگذاری PDF استفاده کنید، TextAbsorber را برای استخراج متن اعمال کنید و absorber.text را در یک فایل .TXT بنویسید. مثال کامل کد در بالا این جریان کار را نشان میدهد.اگر PDF من شامل تصاویر یا صفحات اسکن شده باشد؟
TextAbsorber فقط متن قابل انتخاب را استخراج میکند. برای PDFهای اسکنشده، Aspose.PDF را با Aspose.OCR for Python via .NET ترکیب کنید تا قبل از استخراج، OCR انجام شود.آیا میتوانم چندین PDF را بهصورت دستهای یکباره تبدیل کنم؟
بله. منطق تبدیل را داخل یک حلقه قرار دهید که بر روی فهرستی از مسیرهای فایل تکرار میشود. تنظیمات TextAbsorber را بر حسب نیاز برای هر سند تنظیم کنید.آیا برای پروژههای تجاری نیاز به لایسنس است؟
یک نسخه دارای لایسنس از Aspose.PDF for Python via .NET برای استقرار در محیط تولید مورد نیاز است. لایسنسهای موقت برای تست در دسترس هستند و قیمتگذاری دقیق میتواند در صفحه قیمتگذاری یافت شود.
