دریافت پیام‌های فیلترشده از فایل‌های MBOX در پایتون

فیلتر کردن پیام‌های MBOX بر اساس موضوع و تاریخ

Aspose.Email برای Python از طریق .NET امکان فیلتر یا جستجوی پیام‌ها در فایل‌های MBOX را با استفاده از یک query فراهم می‌کند. متدهای زیر به شما اجازه می‌دهند تنها پیام‌هایی را که با معیارهای خاص مطابقت دارند بازیابی کنید:

نمونه کد زیر به شما نشان می‌دهد چگونه از این متدها در فیلتر کردن پیام‌ها استفاده کنید:

import datetime
from aspose.email.storage.mbox import MboxStorageReader, MboxLoadOptions
from aspose.email import MailQueryBuilder

# Create an MBOX reader with load options
reader = MboxStorageReader.create_reader("input.mbox", MboxLoadOptions())

# Build the mail query
mqb = MailQueryBuilder()
mqb.subject.contains("Project Update")
mqb.sent_date.before(datetime.date.today())

# Iterate over matching messages
for message in reader.enumerate_messages(mqb.get_query()):
    print("Subject:", message.subject)

دریافت صفحه‌بندی شده پیام‌های MBOX

Aspose.Email برای پایتون از طریق .NET از خواندن صفحه‌بندی شدهٔ فایل‌های MBOX پشتیبانی می‌کند، که پردازش مؤثر آرشیوهای بزرگ ایمیل را ممکن می‌سازد. به‌جای بارگذاری تمام مجموعه پیام‌ها در حافظه، می‌توانید پیام‌ها را در دسته‌های کوچک‌تر و قابل مدیریت بازیابی کنید. این به‌ویژه هنگام کار با فایل‌های آرشیو بسیار بزرگ مفید است، زیرا به کاهش مصرف حافظه و بهبود عملکرد پردازش کمک می‌کند.

متدهای زیر می‌توانند برای بازیابی پیام‌های MBOX به‌صورت صفحه‌بندی شده استفاده شوند:

نمونه کد زیر نشان می‌دهد چگونه پیام‌ها را از یک فایل MBOX به صورت بخش‌های قابل مدیریت بخوانید و بازیابی کنید با استفاده از کتابخانه Aspose.Email:

from aspose.email.storage.mbox import MboxStorageReader, MboxLoadOptions

# Initialize MBOX reader with load options
reader = MboxStorageReader.create_reader("input.mbox", MboxLoadOptions())

# Define pagination parameters
start_index = 0
count = 10  # Retrieve messages in batches of 10

# Enumerate and display messages in the current batch
for message in reader.enumerate_messages(start_index, count):
    print("Subject:", message.subject)