קריאת קבצי PST/OST פגומים
קריאת קבצי PST/OST פגומים
במקרים מסוימים, קובץ PST או OST עשוי להפוך לבלתי נגיש עקב פגיעה או נזק. כאשר זה קורה, Outlook עלול לא להצליח לפתוח את הקובץ, מה שמקשה על שליפת אימיילים חשובים ונתוני תיבת דואר אחרים.
Aspose.Email מספקת API המאפשרת לסרוק ולחלץ הודעות בלתי פגועות מקובץ PST פגום באמצעות מזהי הודעות ותיקיות.
המתודות הבאות של PersonalStorage המחלקה היא חיונית לשחזור נתונים מקובץ PST פגום:
-
קבלת מזהי הודעה ותיקייה:
find_messages(parent_entry_id) – מחזיר רשימת מזהי הודעות בתוך תיקייה מסוימת.
find_subfolders(parent_entry_id) – מייצר רשימת מזהי תיקיות משנה בתוך תיקייה נתונה.
-
גישה להודעות ולתיקיות באמצעות המזהים שלהם:
extract_message(entry_id) – מחלץ הודעה מקובץ PST באמצעות מזהה הכניסה שלה.
get_folder_by_id(entry_id) – מקבלת תיקייה מקובץ PST באמצעות מזהה הכניסה שלה.
דוגמת הקוד הבאה מציגה כיצד לנווט בקובץ PST פוטנציאלית פגום, לחלץ הודעות בלתי פגועות ולחפש בתיקיות המשנה:
import aspose.email as ae
def explore_corrupted_pst(pst, root_folder_id):
message_id_list = pst.find_messages(root_folder_id)
for message_id in message_id_list:
try:
msg = pst.extract_message(message_id)
print("- " + msg.subject)
except Exception as e:
print("Message reading error. Entry id: " + message_id)
folder_id_list = pst.find_subfolders(root_folder_id)
for sub_folder_id in folder_id_list:
if sub_folder_id != root_folder_id:
try:
subfolder = pst.get_folder_by_id(sub_folder_id)
print(subfolder.display_name)
except Exception as e:
print("Message reading error. Entry id: " + sub_folder_id)
explore_corrupted_pst(pst, sub_folder_id)
pst = ae.storage.pst.PersonalStorage.from_file("target.pst")
explore_corrupted_pst(pst, pst.root_folder.entry_id_string)