0

重複の可能性:
Python で HTML をエスケープする最も簡単な方法は何ですか?

PythonでHTMLエスケープ文字を使用する最も簡単な方法は何ですか? アイテムのリストを取得して繰り返し処理し、HTML エスケープ文字に変更したいと思います。

4

3 に答える 3

1

Python標準ライブラリにはcgi、関数を提供するモジュールがありますescape

参照:http ://docs.python.org/library/cgi.html#functions

于 2012-07-05T01:23:35.627 に答える
0

このようなことを試してください(テストされていない、単なるサンプル):

html_convert = {"<": "&lt;", ">": "&gt;", "\"": "&quot;", "&": "&amp;"} #Etc.
html_text = "<div id=\"idk\">Something truly interesting & fun...</div>"
html_list = [char for char in html_text]

for char in html_list:
    if char in html_convert:
        char = html_convert[char]

html_escaped_text = "".join(html_list)
于 2012-07-05T00:43:41.610 に答える
0

テンプレート エンジンは、コードをよりクリーンにし、保守を容易にする傾向があります。たとえば、リストをテンプレート エンジンに渡し、テンプレート内で反復を実行できます。

t = Template('{% for item in items %}{{ item }}\n{% endfor %}')
result = t.render(dict(items=some_list))

ほとんどのテンプレート エンジンは、デフォルトで html をエスケープします。私が Django を使用していないときは、たくさんの選択肢がありますが、お気に入りは jinja2 かもしれません。

他の代替方法については、 http://wiki.python.org/moin/Templatingを参照してください。

于 2012-07-04T23:41:12.360 に答える