Skip to main content
 首页 » 编程设计

python之Yagmail 将邮件正文转换为 base 64

2024年10月25日34tuyile006

我发送了一封包含以下 python 代码的电子邮件:

import yagmail, sha, sys, os 
os.system('stty -echo') 
password = raw_input('Gmail password: ') 
os.system('stty echo') 
print '' 
if not sha.sha(password).hexdigest() == 'digest_of_the_password': 
    print 'Password Declined' 
    sys.exit() 
yag = yagmail.Connect('me@gmail.com', password) 
yag.send('to@example.com', 'Hi', "G'day") 

主体输出为“Hi”,但正文输出为“RydkYXk=”。我使用以下命令安装了 yagmail:sudo pip install yagmail 在我的 mac 终端中。

如何修复此错误?

请您参考如下方法:

作为维护者,我深表歉意!

我不小心在错误的行中添加了一个制表符,这也为文本添加了 base64 编码!

如果您现在使用 sudo pip install -U yagmail 它将升级到已解决此问题的新版本。

对于 future 的错误,请将它们提交到 github ,我会尽量在发布后 24 小时内解决所有问题。

请注意,现在您可以简单地省略密码:它会在提示您输入一次密码后将其安全地保存在 key 环中。在这种情况下,这将为您节省很多行:

import yagmail 
yag = yagmail.SMTP('me@gmail.com') 
yag.send('to@example.com', 'Hi', "G'day")