Home » Python » PythonでMarkdown記法の表をHTMLに

PythonでMarkdown記法の表をHTMLに

動作検証バージョン:Windows 10 Pro(64-bit)+ Python 3.8.3(32-bit)+ Markdown 3.2.2

このサイト『インストラクターのネタ帳』の原稿は、基本的にテキストエディタで書いています。表については、Excelファイルで作成しておき、数式でタグを入れてHTMLにすることもあります。

最初から表にすることが決まっている場合は、この方式でイイのですが、ある程度テキストエディタで書いてみてから、表にするほうが良さそうに感じることがあります。

そういった場合、途中からExcelにするのは、面倒だったりするのです。

[スポンサードリンク]

で、Markdownで記述して、PythonでHTMLに変換するほうが簡単かもしれないと感じ、調べてみると予想以上に簡単でした。

markdownモジュールのインストール

使ったのはmarkdownモジュールです。

markdownモジュールのインストールは、KDP(Kindle Direct Publishng)による拙著『VBAユーザーのためのPython超入門』の、chapter 10でも解説しているとおり「pip install markdown」で可能です。

markdownモジュールでTableをHTMLに

インストールができたら、markdown.Markdownコンストラクタの引数extensionsに['tables']を指定して、Markdownオブジェクトを変数mdに格納します。

>>> import markdown
>>> md=markdown.Markdown(extensions=['tables'])

つづいて三重引用符・トリプルクォートを使って、変数tblに、MarkdownによるTableを格納しておいて、

>>> tbl = '''
|見出しA |見出しB |見出しC
|---------:|:--------:|:--------
|aaaa |bbbb |cccc
'''

Markdown.convertメソッドの引数に、tblを指定してprintすると、

>>> print(md.convert(tbl))
<table>

<thead>

<tr>

<th align="right">見出しA</th>

<th align="center">見出しB</th>

<th align="left">見出しC</th>

</tr>

</thead>

<tbody>

<tr>

<td align="right">aaaa</td>

<td align="center">bbbb</td>

<td align="left">cccc</td>

</tr>

</tbody>

</table>

以上のようなHTMLが出力されます。

[スポンサードリンク]

Home » Python » PythonでMarkdown記法の表をHTMLに

「Python」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.