Package: outlook-mail-loader
Table of ContentsShort Overview.Installation via pip:Typical usages1) Dump letters from outlook to local directorySimplest exampleFull signature ofmail_loader_obj.dump_newmethodAttributes and methods ofmail_loader_obj2) Process dumped lettersExampleFormat of the dictitonary with dumped letterAttributes and methods ofdumped_mails_obj3) Listen to some outlook folder to dump all letters continuouslyExampleFull signature oflisten_outlook_mail_folderLinksProject local LinksContactsLicenseShort Overview.outlook_mail_loader is a python package (py>=3.6) which helps in handling outlook lettersThis library helps to dump letters from outlook to some local folder in human readable format.Installation via pip:pipinstalloutlook_mail_loaderTypical usages1) Dump letters from outlook to local directoryIf you want to dump all new letters from outlook folder to windows local folder.Firstly, you should define dumper object from classMailFolderDumperAnd then, whenever you want you can call method dump_new(…) to dump the new lettersSimplest examplefromoutlook_mail_loaderimportMailFolderDumpermail_loader_obj=MailFolderDumper(str_outlook_folder_name="inbox",str_path_dir_where_to_save="mails",)# To dump the new letters from the asked outlook foldermail_loader_obj.dump_new()After the dump you will get file-folder structure like that:str_path_dir_where_to_save–><str_outlook_folder_name>—->LETTER_1—->LETTER_2—-> …—->LETTER_N——>letter.txt——>dict_metainfo.json——>ATTACHMENTS——–>file_1——–>file_NFull signature ofmail_loader_obj.dump_newmethod# Full signature of the dump_new methodmail_loader_obj.dump_new(int_max_last_letters_to_dump=10,is_to_mark_messages_as_read=False,is_to_remove_attachments=False,is_to_preserve_msg_obj=False,)Attributes and methods ofmail_loader_objAttributes:.str_outlook_folder_name(str): Folder name which to dump.str_path_dir_where_to_save(str): Path where to dumpMethods:.dump_new(…)- Dump new letters to set local directory.print_stats_about_initialized_folders()- Print hierarchy for initialized outlook mail folder.print_full_folders_hierarchy_from_root()- Print full hierarchy from root outlook mail folder.get_list_names_of_all_outlook_folders()- Get list names of all outlook folders available2) Process dumped lettersAfter the letters are dumped to local folderYou most probably want to do some action with themHere are some handlers for doing itExamplefromoutlook_mail_loaderimportDumpedMailsdumped_mails_obj=DumpedMails(str_path_dir_with_mails="mails",)# Get dictionary with last letterdict_last_letter=dumped_mails_obj.get_last_letter()print(get_last_letter)# Get dictionary with last N letterlist_dict_last_5_letter=dumped_mails_obj.get_last_n_letters(5)# Print statistics about all dumped lettersdumped_mails_obj.print_stats_about_dumped_mails()Format of the dictitonary with dumped letterdict_one_letter[“letter”]- Text of the letterdict_one_letter[“dict_metainfo”]- All metainfo about the letterdict_one_letter[“list_attachments”]- List pathes to files with letter’s attachmentsAttributes and methods ofdumped_mails_objAttributes:.str_path_dir_with_mails(str): Path to dir with dumped letters.int_last_dumped_id(str): Id of the last dumped letterMethods:.get_last_letter()- Get dictionary with last letter.get_last_n_letters(int_last_letters_to_get)- Get list of dicts of last N letters.print_stats_about_dumped_mails()- Print statistics about all dumped letters.clear_dumped_mails()- Clear from cache dumped mails3) Listen to some outlook folder to dump all letters continuouslyIn case if you want to run some process only once andthen be sure that all new letters are dumped into the local folderThen you can start mail folder listenerExamplefromoutlook_mail_loaderimportlisten_outlook_mail_folder# To dump the new letters from the asked outlook folderlisten_outlook_mail_folder(str_outlook_folder_name="inbox",str_path_dir_where_to_save="mails",int_seconds_step_in_dump=60,)Full signature oflisten_outlook_mail_folderfromoutlook_mail_loaderimportlisten_outlook_mail_folder# Full signature of the dump_new methodlisten_outlook_mail_folder(str_outlook_folder_name="inbox",str_path_dir_where_to_save="mails",int_seconds_step_in_dump=60,is_to_mark_messages_as_read=False,is_to_remove_attachments=False,is_to_preserve_msg_obj=False,)Arguments description:str_outlook_folder_name(str, optional): Which outlook folder to listenstr_path_dir_where_to_save(str, optional): Path to dir. where to save letters.int_seconds_step_in_dump(int, optional): Seconds to wait between dumping new letters.is_to_mark_messages_as_read(bool, optional): Flag if to mark as read saved letters. Default is False.is_to_remove_attachments(bool, optional): Flag if to remove attachments to save disk space. Default is False.is_to_preserve_msg_obj(bool, optional): Flag if to preserve outlook .msg object. Default is False.LinksPYPIreadthedocsGitHubProject local LinksCHANGELOG.CONTRIBUTING.ContactsEmail:stas.prokopiev@gmail.comvk.comFacebookLicenseThis project is licensed under the MIT License.