Package: outlookutility
Outlook Msg Automation functionsdisplay_email: Display draft of emaildefdisplay_email(message:str,subject:str,to_list:str,cc_list:str):""":param message: HTML String with Email message contained. See Examples/Email_Strings.py:param subject: Subject String:param to_list: Semicolon separated list of email addresses. (ex - a@abc.com; b@abc.com; c@abc.com;):param cc_list: Semicolon separated list of email addresses. (ex - a@abc.com; b@abc.com; c@abc.com;)"""Example Callfromoutlookutilityimportdisplay_emailtest_html=f"""<HTML><BODY>Package Testing Email<br></BODY></HTML>"""display_email(test_html,"PyPi Test","a@abc.com; b@abc.com;","c@abc.com;",)display_email_with_attachments: Display draft of email with attachments. Can send any number/type of attachments in email.defdisplay_email_with_attachments(message:str,subject:str,to_list:str,cc_list:str,*args):""":param message: HTML String with Email message contained. See Examples/Email_Body.html.:param subject: Subject String:param to_list: Semicolon separated list of email addresses. (ex - a@abc.com; b@abc.com; c@abc.com;):param cc_list: Semicolon separated list of email addresses. (ex - a@abc.com; b@abc.com; c@abc.com;):param args: Optional attachment arguments, pass as raw file path or stringified file path."""Example Callfromoutlookutilityimportdisplay_email_with_attachmentstest_html=f"""<HTML><BODY>Package testing email with attachments<br></BODY></HTML>"""display_email_with_attachments(test_html,"PyPi Test","a@abc.com; b@abc.com;","c@abc.com;",r"C:\Users\user\test_1.txt",r"C:\Users\user\test_2.txt",)email_without_attachment: Send email without attachments.defemail_without_attachment(message:str,subject:str,to_list:str,cc_list:str):""":param message: HTML String with Email message contained. See Examples/Email_Strings.py:param subject: Subject String:param to_list: Semicolon separated list of email addresses. (ex - a@abc.com; b@abc.com; c@abc.com;):param cc_list: Semicolon separated list of email addresses. (ex - a@abc.com; b@abc.com; c@abc.com;)"""Example Callfromoutlookutilityimportemail_without_attachmenttest_html=f"""<HTML><BODY>Package Testing Email<br></BODY></HTML>"""email_without_attachment(test_html,"PyPi Test","a@abc.com; b@abc.com;","c@abc.com;",)email_with_attachments: Send email with attachments. Can send any number/type of attachments in email.defemail_with_attachments(message:str,subject:str,to_list:str,cc_list:str,*args):""":param message: HTML String with Email message contained. See Examples/Email_Body.html.:param subject: Subject String:param to_list: Semicolon separated list of email addresses. (ex - a@abc.com; b@abc.com; c@abc.com;):param cc_list: Semicolon separated list of email addresses. (ex - a@abc.com; b@abc.com; c@abc.com;):param args: Optional attachment arguments, pass as raw file path or stringified file path."""Example Callfromoutlookutilityimportemail_with_attachmentstest_html=f"""<HTML><BODY>Package testing email with attachments<br></BODY></HTML>"""email_with_attachments(test_html,"PyPi Test","a@abc.com; b@abc.com;","c@abc.com;",r"C:\Users\user\test_1.txt",r"C:\Users\user\test_2.txt",)notify_error: Automated email report for use in exception catch.defnotify_error(report_name,error_log,to_list:str):""":param to_list: List of emails to receive notification.:param report_name: Name of automated report.:param error_log: Raised exception or other error to report."""Example Callfromoutlookutilityimportnotify_errorimportosdeffoo():raiseException('Error!')try:foo()exceptExceptionase:notify_error(f"{os.path.basename(__file__)}",e,"a@email.com")default_table_style : Apply formatting to Pandas dataframe for use in emaildefdefault_table_style(df,index:False):""" Apply a default clean table style to pandas df.to_html() for use in email strings.:param index: Determines whether you want index displayed in the HTML. Defaults to False.:type index: Boolean:param df: Dataframe to apply the style to.:type df: Pandas Dataframe:return: HTML string for insertion in email.:rtype: string"""Example Callfromoutlookutilityimportdefault_table_styleimportpandasaspdimportnumpyasnpdf=pd.DataFrame(np.random.randint(0,100,size=(15,4)),columns=list('ABCD'))test_message=f"""<HTML><BODY>Email Text Here<br>{default_table_style(df,index=False)}<br></BODY></HTML>"""multi_table_style : Apply formatting to multiple Pandas dataframes for use in emaildefmulti_table_style(df_list,index:False):""" Apply a default clean table style to pandas df.to_html() for use in email strings.This version returns multiple tables stacked on top of each other with a line break inbetween.:param index: Determines whether you want index displayed in the HTML. Defaults to False.:type index: Boolean:param df_list: List of dataframes to return in html format.:type df: Pandas Dataframe:return: HTML string for insertion in email.:rtype: string"""Example Callfromoutlookutilityimportmulti_table_styleimportpandasaspdimportnumpyasnpdf=pd.DataFrame(np.random.randint(0,100,size=(15,4)),columns=list('ABCD'))df_list=[df,df]formatted_tables=multi_table_style(df_list,index=False)test_message=f"""<HTML><BODY>Email Text Here<br>{formatted_tables}<br></BODY></HTML>"""