[英]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.