import os import imaplib import json from dotenv import load_dotenv load_dotenv() EMAIL_ACCOUNTS = json.loads(os.environ.get("MAIL_ACCOUNTS")) EMAIL_PASSWORDS = json.loads(os.environ.get("MAIL_PASSWORDS")) # using zip() # to convert lists to dictionary accounts = dict(zip(EMAIL_ACCOUNTS, EMAIL_PASSWORDS)) print(accounts) ################ IMAP SSL ############################## for account in accounts: with imaplib.IMAP4_SSL(host="imap.gmail.com", port=imaplib.IMAP4_SSL_PORT) as imap_ssl: print("Connection Object : {}".format(imap_ssl)) print("Logging into mailbox...") try: resp_code, response = imap_ssl.login(account, accounts[account]) except Exception as e: print("ErrorType : {}, Error : {}".format(type(e).__name__, e)) resp_code, response = None, None print("Response Code : {}".format(resp_code)) print("Response : {}\n".format(response[0].decode())) imap_ssl.select('inbox') resp_code, messages = imap_ssl.search(None, 'UnSeen') if resp_code == 'OK': if len(messages[0].split()) > 0: print('True') print(messages[0].split()) print(len(messages[0].split())) else: print('False') ############### Logout of Mailbox ###################### print("\nLogging Out....") imap_ssl.close()