我有一个csv文件,数据和一个HTML文件模板。
我想要一个脚本,它将使用html文件作为模板,从csv文件为每条记录创建一个单独的html文件。
在Ruby中执行此操作的最佳方法是哪种?蟒蛇? 我用这两种语言可以使用工具/库吗?
答案 0 :(得分:5)
Python Jinja2。
import jinja
import csv
env= jinja.Environment()
env.loader= jinja.FileSystemLoader("some/directory")
template= env.get_template( "name" )
rdr= csv.reader( open("some.csv", "r" ) )
csv_data = [ row for row in rdr ]
print template.render( data=csv_data )
事实证明,只要将rdr
直接传递给Jinja进行撕裂,您就可以逃脱。
如果模板看起来像这样,它将适用于各种Python结构,包括迭代器。
<table>
{% for row in data %}
<tr>
<td>{{ row.0 }}</td><td>{{ row.1 }}</td>
</tr>
{% endfor %}
</table>
答案 1 :(得分:4)
Ruby内置了CSV处理功能,这使得输出静态HTML文件变得非常简单 参见:
实际上,Python也是如此,所以这实际上是个人偏好的问题(或者你已配置的那个)。