![](/img/trans.png)
[英]How to send data in tabular format fetched from data base in email using python?
[英]How to send the test cases results in tabular format in html using Python
我正在以“文本”格式发送已通过但失败的每日结果邮件。
我希望它可以使用Python以HTML格式的表格格式发送。
============Text I am sending daily===========================
423 EIR DIAMETER IMEI Software Version handling 5 5 0 100.0
424 EIR DIAMETER eirDualImsiUpdateTimestamp 2 2 0 100.0
EIR-Provisioning 47 41 6 87.23
-------------------------------------------------------------------------------------------------------------------------------------------------
Total Summary 839 828 11 98.68
---------------------------------------------------------------------------------------------------------------------------------------------
根据我对问题的理解。
看一下这个
如果您期待任何模块,则漂亮打印表格数据可能会派上用场。
如果要html表,请尝试使用python中的html模块。
如果您正在寻找除此以外的内容,请提及它们。
我建议使用jinja2 。 它是如此简单,我认为我不需要解释任何事情。 但是,假设您有一个tests
文件夹,里面有一个空的__init__.py
文件(您的文件夹现在是python软件包),则需要创建一个名为templates
的文件夹,并将html文件放入其中。
您的html文件(例如report.html
)内容将如下所示:
<table>
<tbody>
{% for test in test_results %}
<tr>
<td>{{test.name}}</td>
<td>{{test.version}}</td>
</tr>
{% endfor %}
</tbody>
</table>
现在,在您的python代码中,您可以在运行测试时执行以下操作:
from jinja2 import Environment, PackageLoader
env = Environment(loader=PackageLoader('tests', 'templates'))
html_report = env.get_template('report.html')
send_by_email(html_template.render(tests_results=dictionary_of_results))
当然send_by_email
函数不存在,您可以自己编写。 另外,您的html文件实际上是HTML,因此您可以执行平时所做的任何事情,内联样式以及所有其他内容。 jinja2
使得可以借助template tags
即时自定义其内容,并根据需要呈现HTML字符串供您使用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.