python MIME:如何更改附件的名称



我可以使用smtplib函数发送电子邮件,但我的文件名总是包括文件的路径:

attachment.add_header("Content-disposition", "attachment", filename=fileToSend)
msg.attach(attachment)

在这种情况下fileToSend="/home/pi/email/RSPL-0002_2015_11_17__00_00_00.csv"

我收到的文件是homepiemailRPSL-002_2015_11_17__00_00_00.csv

我已经尝试替换fileToSend[11:],以及一个等于它的变量,但文件路径总是通过电子邮件文件(没有斜杠)。

如何指定附件的文件名?

您对email.message.Message.add _header的使用基本上是正确的,只是您不能传入目录名-如果您可以控制收件人站点的目录结构,那将是一个安全问题(在许多情况下也是一个巨大的可用性问题),因此根本不支持它。

如果变量fileToSend中的值是用户提供的字符串,其中可能包含路径,请使用类似filename=os.path.basename(fileToSend)的内容(请参阅文档)。

相关内容

  • 没有找到相关文章

最新更新