Python/HTML - 将多个HTML合并为一个
我写了一个Python脚本,可以把文本文件转换成HTML文件。但是如果不能把这些文件放在一起,那就没什么用处了。我想做的是把所有的报告展示在网站上(服务器的部分我不管)。现在我可以把每个文件转换成HTML,但我突然意识到这是一大堆文件。那我该怎么把它们合并在一起呢?
我在想怎么把它们放在一起,比如说:
假设这是主页:
像这样的超链接(这里的链接都是假的,只是给你展示我在想什么)……用户可以点击这些链接查看报告。这样比到处都是HTML文件要有条理多了——这只是我随便想想。
但问题是,我该怎么自动把所有的HTML报告合并在某个日期字段下呢?
有没有什么指南可以参考?我完全迷茫了,不知道从哪里开始。
1 个回答
6
在Python中创建一个包含元组的列表。然后对这个列表进行原地排序。接着遍历这个列表,生成你的主页HTML。下面是一个示例。你需要为每个报告填写网址和日期(可以是日期对象,也可以是字符串,比如:'09-12-2011')
report_tuples = [
('http://www.myreport.com/report1', report1_date_object_or_string),
('http://www.myreport.com/report2', report2_date_object_or_string),
('http://www.myreport.com/report3', report3_date_object_or_string),
]
sorted(report_tuples, key=lambda reports: reports[1]) # sort by date
html = '<html><body>' #add anything else in here or even better
#use a template that you read and complement
lastDate = None
for r in report_tuples:
if not lastDate or not lastDate == r[1]:
html += '<h3>%s</h3>' % (str(r[1]))
html += '<a href="%s">Your Report Title</a>' % (r[0])
return html #or even better, write it to the disk.
这里有一些可能对你有帮助的网址: