diff options
Diffstat (limited to 'tablib')
| -rw-r--r-- | tablib/formats/_html.py | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/tablib/formats/_html.py b/tablib/formats/_html.py index 0b45f14..655e74c 100644 --- a/tablib/formats/_html.py +++ b/tablib/formats/_html.py @@ -31,7 +31,7 @@ def export_set(dataset): page.table.open() if dataset.headers is not None: - new_header = [item if item is not None else '' for item in dataset.headers] + new_header = [item if item is not None else '' for item in dataset.headers] page.thead.open() headers = markup.oneliner.th(new_header) @@ -39,7 +39,7 @@ def export_set(dataset): page.thead.close() for row in dataset: - new_row = [item if item is not None else '' for item in row] + new_row = [item if item is not None else '' for item in row] html_row = markup.oneliner.td(new_row) page.tr(html_row) @@ -58,10 +58,13 @@ def export_book(databook): stream = StringIO() + # Allow unicode characters in output + wrapper = codecs.getwriter("utf8")(stream) + for i, dset in enumerate(databook._datasets): title = (dset.title if dset.title else 'Set %s' % (i)) - stream.write('<%s>%s</%s>\n' % (BOOK_ENDINGS, title, BOOK_ENDINGS)) - stream.write(dset.html) - stream.write('\n') + wrapper.write('<%s>%s</%s>\n' % (BOOK_ENDINGS, title, BOOK_ENDINGS)) + wrapper.write(dset.html) + wrapper.write('\n') - return stream.getvalue() + return stream.getvalue().decode('utf-8') |
