к фрагментам HTML
Я пытаюсь очистить ввод пользователя, чтобы предотвратить внедрение XSS, с помощью средства очистки HTML libxml . Когда я ввожу такую строку:
Normal text <b>Bold text</b>
, я получаю вместо этого:
<p>Normal text <b>Bold text</b></p>
Я хочу избавиться от тега
, который окружает весь мой ввод.
Вот функция который в настоящее время выполняет очистку:
from lxml.html import clean
cleaner = clean.Cleaner(
scripts = True,
javascript = True,
allow_tags = None,
)
def sanitize_html(html):
return cleaner.clean_html(html)
С другой стороны, в приведенном выше коде есть одна строка: allow_tags = None
, где я пытаюсь удалить все теги HTML.Есть ли в libxml функция белого списка, в которой я только разрешаю определенные теги?