Форматирование данных CSV-файла с помощью HTML-шаблона - PullRequest
5 голосов
/ 19 июня 2009

У меня есть файл CSV, данные и файл HTML, шаблон .

Мне нужен скрипт, который будет создавать отдельный html-файл для каждой записи из файла csv, используя html-файл в качестве шаблона.

Какой лучший способ сделать это в Ruby? Python? Есть ли инструмент / библиотека, которую я могу использовать для этого на любом языке?

Ответы [ 2 ]

5 голосов
/ 19 июня 2009

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 непосредственно Джиндже для раздачи.

Если шаблон выглядит следующим образом, он будет работать с широким спектром структур Python, включая итератор.

<table>
{% for row in data %}
<tr>
    <td>{{ row.0 }}</td><td>{{ row.1 }}</td>
</tr>
{% endfor %}
</table>
4 голосов
/ 19 июня 2009

В Ruby есть встроенная обработка CSV, которая должна сделать довольно простой вывод статических файлов HTML.
См:

На самом деле, как и Python, так что это вопрос личных предпочтений (или того, что вы уже настроили).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...