yagmail
yagmail copied to clipboard
SMTP instance has no attribute 'is_closed'"
I am using click
python package to parse command line arguments. When using it with yagmail, I get this error.
Traceback (most recent call last):
File "/Users/euphorbium/PyCharmProjects/birthdaynotifier/test.py", line 12, in <module>
send_mail()
File "/Users/euphorbium/miniconda3/envs/birthdays/lib/python2.7/site-packages/click/core.py", line 716, in __call__
return self.main(*args, **kwargs)
File "/Users/euphorbium/miniconda3/envs/birthdays/lib/python2.7/site-packages/click/core.py", line 696, in main
rv = self.invoke(ctx)
File "/Users/euphorbium/miniconda3/envs/birthdays/lib/python2.7/site-packages/click/core.py", line 889, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/Users/euphorbium/miniconda3/envs/birthdays/lib/python2.7/site-packages/click/core.py", line 534, in invoke
return callback(*args, **kwargs)
File "/Users/euphorbium/PyCharmProjects/birthdaynotifier/test.py", line 8, in send_mail
yag = yagmail.SMTP(un, pw).send('[email protected]', 'test', 'test')
File "/Users/euphorbium/miniconda3/envs/birthdays/lib/python2.7/site-packages/yagmail/yagmail.py", line 54, in __init__
self.user, self.useralias = self._make_addr_alias_user(user)
File "/Users/euphorbium/miniconda3/envs/birthdays/lib/python2.7/site-packages/yagmail/yagmail.py", line 305, in _make_addr_alias_user
raise YagAddressError
yagmail.error.YagAddressError
Exception AttributeError: "SMTP instance has no attribute 'is_closed'" in <bound method SMTP.__del__ of <yagmail.yagmail.SMTP instance at 0x102f6c098>> ignored
Here is the example program:
import yagmail
import click
@click.command()
@click.option('--un', help='Your gmail username')
@click.option('--pw', help='Your gmail password')
def send_mail(un, pw):
yag = yagmail.SMTP(un, pw)
yag.send('[email protected]', 'test', 'test')
if __name__ == '__main__':
send_mail()
+1
It's quite harmless, but I think I solved it. Note that the actual problem in your code is the yagmail.error.YagAddressError
.
See if you get the AttributeError after an upgrade: pip install -U --no-cache yagmail