如何将Excel文件的内容复制到使用python的电子邮件正文中

我正在写一个Python脚本来发送电子邮件。 现在它发送一个excel文件作为附件,而是我想发送电子邮件的正文与Excel文件的内容。 就像用颜色复制excel文件的内容,格式化等,并粘贴到电子邮件正文中。 我怎么做?

我的python脚本如下:

#!/usr/local/bin/python2.7 import smtplib,email,email.encoders,email.mime.text,email.mime.base from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText from email import encoders from email.message import Message from email.mime.audio import MIMEAudio from email.mime.base import MIMEBase from email.mime.image import MIMEImage from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText import schedule import time msg = MIMEMultipart() # me == my email address # you == recipient's email address me = "abc@something.com" you = "abc@something.com" # Create message container - the correct MIME type is multipart/alternative. msg = MIMEMultipart('mixed') msg['Subject'] = "Automation Testing" msg['From'] = me msg['To'] = you # Create the body of the message (a plain-text and an HTML version). text = "Hi\n\nPlease find attached the weekly report." part1 = MIMEText(text, 'plain') #attach an excel file: fp = open('/Users/excel.xlsm', 'rb') file1=email.mime.base.MIMEBase('application','vnd.ms-excel') file1.set_payload(fp.read()) fp.close() email.encoders.encode_base64(file1) file1.add_header('Content-Disposition','attachment;filename=excelsheet.xlsx') # Attach parts into message container. # According to RFC 2046, the last part of a multipart message, in this case # the HTML message, is best and preferred. msg.attach(part1) msg.attach(file1) composed = msg.as_string() fp = open('msgtest.txt', 'w') fp.write(composed) # Credentials (if needed) # The actual mail send server = smtplib.SMTP('smtp.something.com', 259) server.starttls() server.sendmail(me, you, composed) server.quit() fp.close()