gpt4 book ai didi

Python yagmail 附件不起作用

转载 作者:太空宇宙 更新时间:2023-11-03 17:38:01 25 4
gpt4 key购买 nike

我正在使用yagmail Windows 8.1 上的 Python 3.3 为 -0.3.78。我可以让 yagmail 从我的控制台发送电子邮件,但附件不起作用。

yagmail.Connect('myemail@gmail.com','password').send('someguy@gmail.com', 'Test', 'This is a test', 'c:\\users\\lenovo\\appdata\\local\\temp\\mydoc.docx')

这将返回一个空字典,控制台中没有错误。该电子邮件显示有正确的主题和正文,但没有附件。起初我以为我的防病毒软件可能会删除附件,但防病毒日志中没有任何内容表明确实如此。

附:显然 yagmail 没有标签,而且我没有创建它的代表。

Edit-1:一些进展(?)

contents = ['This is a test', 'c:\\users\\lenovo\\appdata\\local\\temp\\mydoc.docx']
yagmail.Connect('myemail@gmail.com','password').send('someguy@gmail.com', 'Test',contents)

...导致以下错误。

Traceback (most recent call last):
File "<string>", line 301, in runcode
File "<interactive input>", line 1, in <module>
File "C:\Python33\lib\site-packages\yagmail-0.3.78-py3.3.egg\yagmail\yagmail.py", line 73, in send
return self._attempt_send(addresses['recipients'], msg.as_string())
File "C:\Python33\lib\site-packages\yagmail-0.3.78-py3.3.egg\yagmail\yagmail.py", line 79, in _attempt_send
result = self.smtp.sendmail(self.user, recipients, msg_string)
File "C:\Python33\lib\smtplib.py", line 749, in sendmail
msg = _fix_eols(msg).encode('ascii')
UnicodeEncodeError: 'ascii' codec can't encode characters in position 713-715: ordinal not in range(128)

Edit-2:感谢 PascalvKooten,请参阅下面的答案。只是语法上的注释...

yagmail.SMTP('mymail@gmail.com','password').send('someguy@gmail.com','Test1.2','This is a test','C:\\Users\\Lenovo\\AppData\\Local\\Temp\\mydoc.docx')

对我不起作用。然而,下面的结构确实有效。

contents = ['This is a test', 'C:\\Users\\Lenovo\\AppData\\Local\\Temp\\mydoc.docx']
yagmail.SMTP('mymail@gmail.com','password').send('someguy@gmail.com','Test1.2',contents)

最佳答案

作为yagmail包的维护者回答:看这个问题https://github.com/kootenpv/yagmail/issues/5

从 0.3.81 版本开始应该已解决。

请使用pip3 install -U yagmail进行更新

我从未测试过它是否可以在 Windows 上运行,所以这是我唯一的不确定性。

关于Python yagmail 附件不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30953792/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com