Python 目录列表没有';不要断线
这个脚本列出了目录的内容和电子邮件列表到我的个人电子邮件。这一切都很好,但问题是它填充了一堵巨大的文本墙,而不是像它应该的那样在每个文件列表中换行。我做错了什么Python 目录列表没有';不要断线,python,list,Python,List,这个脚本列出了目录的内容和电子邮件列表到我的个人电子邮件。这一切都很好,但问题是它填充了一堵巨大的文本墙,而不是像它应该的那样在每个文件列表中换行。我做错了什么 import os import smtplib import platform from datetime import datetime def creation_date(path_to_file): if platform.system() == 'Windows': files = os.listd
import os
import smtplib
import platform
from datetime import datetime
def creation_date(path_to_file):
if platform.system() == 'Windows':
files = os.listdir(path_to_file)
filelist=""
for file in files:
filecreatedate = datetime.fromtimestamp(os.path.getctime(path_to_file + "\\" + file))
fileinfo="Creation date of {}: {}".format(file, filecreatedate)
print("Creation date of {}: {}".format(file, filecreatedate))
filelist=filelist + fileinfo + "\n"
return filelist
# return os.path.getctime(path_to_file)
else:
stat = os.stat(path_to_file)
try:
return stat.st_birthtime
except AttributeError:
return stat.st_mtime
def mailsection(filelist):
smtpObj = smtplib.SMTP('smtp.gmail.com', 587)
smtpObj.ehlo()
(250, b'mx.example.com at your service, [216.172.148.131]\nSIZE 35882577\
n8BITMIME\nSTARTTLS\nENHANCEDSTATUSCODES\nCHUNKING')
smtpObj.starttls()
(220, b'2.0.0 Ready to start TLS')
smtpObj.login('********', '*********')
(235, b'2.7.0 Accepted')
message="Subject:currentfiles\n" + filelist
smtpObj.sendmail('********', '********', message)
{}
smtpObj.quit()
(221, b'2.0.0 closing connection ko10sm23097611pbd.52 - gsmtp')
mailsection(creation_date("C:\\Users\\asher.vast\\Desktop\\Py\\Projects\\Time Tracker\\ExampleDir"))
我的一个同事朋友帮我解决了这个问题。我们最终使用了允许换行的“Email Message类”
message = EmailMessage()
message["Subject"] = "Current Files"
message["From"] = "John Doe <*************@gmail.com>"
message["To"] = "Recipient X <*************.com>"
message.set_content(filelist, subtype="html")
####message="Subject:currentfiles\r\n" + filelist
smtpObj.send_message(message)
message=EmailMessage()
消息[“主题”]=“当前文件”
消息[“来自”]=“John Doe”
邮件[“收件人”]=“收件人X”
message.set_内容(文件列表,subtype=“html”)
####message=“Subject:currentfiles\r\n”+文件列表
smtpObj.发送消息(消息)
电子邮件可能被解释为HTML,断行被忽略。尝试将\n
替换为
。