Esempio n. 1
0
 def __init__(self, user=None, password=None, host='smtp.gmail.com', port='587',
              smtp_starttls=True, smtp_set_debuglevel=0, smtp_skip_login=False,
              encoding="utf-8", oauth2_file=None, soft_email_validation=True, **kwargs):
     self.log = get_logger()
     self.set_logging()
     if smtp_skip_login and user is None:
         user = ''
     elif user is None:
         user = self._find_user_home_path()
     self.user, self.useralias = self._make_addr_alias_user(user)
     self.soft_email_validation = soft_email_validation
     if soft_email_validation:
         validate_email_with_regex(self.user)
     self.is_closed = None
     self.host = host
     self.port = port
     self.starttls = smtp_starttls
     self.smtp_skip_login = smtp_skip_login
     self.debuglevel = smtp_set_debuglevel
     self.encoding = encoding
     self.kwargs = kwargs
     if oauth2_file is not None:
         self.login_oauth2(oauth2_file)
     else:
         self.login(password)
     self.cache = {}
     self.unsent = []
     self.log.info('Connected to SMTP @ %s:%s as %s', self.host, self.port, self.user)
     self.num_mail_sent = 0
Esempio n. 2
0
    def set_logging(self, log_level=logging.ERROR, file_path_name=None):
        """
        This function allows to change the logging backend, either output or file as backend
        It also allows to set the logging level (whether to display only critical/error/info/debug.
        e.g.
        yag = yagmail.SMTP()
        yag.set_logging(yagmail.logging.DEBUG)  # to see everything

        and

        yagmail.set_logging(yagmail.logging.DEBUG, 'somelocalfile.log')

        lastly, a log_level of None will make sure there is no I/O.
        """
        self.log = get_logger(log_level, file_path_name)
Esempio n. 3
0
    def set_logging(self, log_level=logging.ERROR, file_path_name=None):
        """
        This function allows to change the logging backend, either output or file as backend
        It also allows to set the logging level (whether to display only critical, error, info or debug.
        e.g.
        yag = yagmail.SMTP()
        yag.setLogging(yagmail.logging.DEBUG)  # to see everything

        and

        yagmail.setLogging(yagmail.logging.DEBUG, 'somelocalfile.log')

        lastly, a log_level of None will make sure there is no I/O.
        """
        self.log = get_logger(log_level, file_path_name)
Esempio n. 4
0
 def __init__(
     self,
     user=None,
     password=None,
     host="smtp.gmail.com",
     port=None,
     smtp_starttls=None,
     smtp_ssl=True,
     smtp_set_debuglevel=0,
     smtp_skip_login=False,
     encoding="utf-8",
     oauth2_file=None,
     soft_email_validation=True,
     useralias=None,
     **kwargs
 ):
     self.log = get_logger()
     self.set_logging()
     self.soft_email_validation = soft_email_validation
     if oauth2_file is not None:
         oauth2_info = get_oauth2_info(oauth2_file)
         if user is None:
             user = oauth2_info["email_address"]
     if smtp_skip_login and user is None:
         user = ""
     elif user is None:
         user = find_user_home_path()
     self.user, self.useralias = make_addr_alias_user(user)
     if useralias is not None:
         self.useralias = useralias        
     if soft_email_validation:
         validate_email_with_regex(self.user)
     self.is_closed = None
     self.host = host
     self.port = str(port) if port is not None else "465" if smtp_ssl else "587"
     self.smtp_starttls = smtp_starttls
     self.ssl = smtp_ssl
     self.smtp_skip_login = smtp_skip_login
     self.debuglevel = smtp_set_debuglevel
     self.encoding = encoding
     self.kwargs = kwargs
     self.cache = {}
     self.unsent = []
     self.num_mail_sent = 0
     self.oauth2_file = oauth2_file
     self.credentials = password if oauth2_file is None else oauth2_info
Esempio n. 5
0
 def __init__(
     self,
     user=None,
     password=None,
     host="smtp.gmail.com",
     port=None,
     smtp_starttls=None,
     smtp_ssl=True,
     smtp_set_debuglevel=0,
     smtp_skip_login=False,
     encoding="utf-8",
     oauth2_file=None,
     soft_email_validation=True,
     **kwargs
 ):
     self.log = get_logger()
     self.set_logging()
     self.soft_email_validation = soft_email_validation
     if oauth2_file is not None:
         oauth2_info = get_oauth2_info(oauth2_file)
         if user is None:
             user = oauth2_info["email_address"]
     if smtp_skip_login and user is None:
         user = ""
     elif user is None:
         user = find_user_home_path()
     self.user, self.useralias = make_addr_alias_user(user)
     if soft_email_validation:
         validate_email_with_regex(self.user)
     self.is_closed = None
     self.host = host
     self.port = str(port) if port is not None else "465" if smtp_ssl else "587"
     self.smtp_starttls = smtp_starttls
     self.ssl = smtp_ssl
     self.smtp_skip_login = smtp_skip_login
     self.debuglevel = smtp_set_debuglevel
     self.encoding = encoding
     self.kwargs = kwargs
     self.cache = {}
     self.unsent = []
     self.num_mail_sent = 0
     self.oauth2_file = oauth2_file
     self.credentials = password if oauth2_file is None else oauth2_info
Esempio n. 6
0
 def __init__(self, user=None, password=None, host='smtp.gmail.com',
              port='587', smtp_starttls=True, smtp_set_debuglevel=0,
              **kwargs):
     self.log = get_logger()
     self.set_logging()
     if user is None:
         user = self._find_user_home_path()
     self.user, self.useralias = self._make_addr_alias_user(user)
     self.is_closed = None
     self.host = host
     self.port = port
     self.starttls = smtp_starttls
     self.debuglevel = smtp_set_debuglevel
     self.kwargs = kwargs
     self.login(password)
     self.cache = {}
     self.unsent = []
     self.log.info(
         'Connected to SMTP @ %s:%s as %s', self.host, self.port, self.user)
     self.num_mail_sent = 0