在Python中,如何使用下面的代码在显示有组织的数据时使HTML表格成为边框

2024-04-20 12:36:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我在python2.6中使用了这段代码,Email似乎可以工作,HTML表显示有组织的数据,但它周围没有边框,使它实际上可以可视化地显示在表中。你能建议一下这里需要做什么吗?你知道吗

import csv
from tabulate import tabulate
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
import smtplib

me = 'xxx@gmail.com'
password = 'yyyzzz!!2'
server = 'smtp.gmail.com:587'
you = 'qqq@gmail.com'

text = """
Hello, Friend.

Here is your data:

{table}

Regards,

Me"""

html = """
<html>
 <body>
  <p>Hello, Friend.</p>
  <p>Here is your data:</p>
  {table}
  <p>Regards,</p>
  <p>Me</p>
 </body>
</html>
"""

with open('input.csv') as input_file:
    reader = csv.reader(input_file)
    data = list(reader)

text = text.format(table=tabulate(data, headers="firstrow", tablefmt="grid"))
html = html.format(table=tabulate(data, headers="firstrow", tablefmt="html"))

message = MIMEMultipart(
    "alternative", None, [MIMEText(text), MIMEText(html,'html')])

message['Subject'] = "Your data"
message['From'] = me
message['To'] = you
server = smtplib.SMTP(server)
server.ehlo()
server.starttls()
server.login(me, password)
server.sendmail(me, you, message.as_string())
server.quit()

Tags: csvtextfromimportcomyoumessagedata