因此,我正在构建一个包含大量用户输入的 Web 2.0 站点,但与任何 Web 2.0 站点一样,我会遇到垃圾邮件问题。据我所知,就我而言,最简单的方法是阻止任何 HTML 标记。用户不需要格式化,我将用于固定间距。
但我不认为有任何屏蔽标签,xmb 听起来很完美,但自 90 年代以来就被弃用了,非常愚蠢。
否则,我需要什么样的过滤?我看到堆栈溢出允许“基本”HTML...我该怎么做?阻止某些标签或允许某些标签等。正如我所说,用户不应该需要任何标签。
编辑:使用django
最佳答案
在 Django 中,您可以转义(编码)特殊的 HTML 字符,例如 <
和 >
所以标签可以显示为可读文本,但不能用作 HTML:
from django.utils.html import escape
print escape('<div class="q">Q & A</div>')
请注意,您的模板变量可能已经被转义,您可能需要先检查一下是否需要使用转义。
或者您可以完全删除标签,如下所示:
from django.utils.html import strip_tags
strip_tags(string_value)
或者,您可以使用模板过滤器来删除它们,例如:
{{ value|striptags }}
关于python - 阻止网页中的 HTML 标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4213884/