На основе PHP Очиститель HTML , я сам еще не использовал его, но слышал об этом очень хорошие вещи. Они много обещают:
HTML Purifier соответствует стандартам
Библиотека HTML-фильтров написана на
PHP. HTML Purifier не только удалит все вредоносные
код (более известный как XSS) с тщательно проверенным,
безопасный, но разрешительный белый список,
это также проверит ваши документы
соответствие стандартам, что-то достижимое только с
всестороннее знание спецификаций W3C.
Может быть, стоит попробовать, хотя он не основан на Python. Обновление: @Matchu нашел альтернативу на основе Python, которая тоже выглядит хорошо.
Однако у вас будет много очень сложных краевых случаев, просто подумайте о встраивании Flash. Кроме того, злонамеренное использование position: absolute
чрезвычайно трудно отследить (есть position: relative
, который может достичь того же эффекта, но также может быть вполне законным инструментом верстки.) Может быть, посмотрите, что, например, разрешает EBay, и не разрешать? Если у кого-то есть необходимый опыт, чтобы знать, что опасно, а что нет, из миллионов примеров, он знает.
Связанные ресурсы на EBay:
Из того, что я обнаружил, они, похоже, не публикуют свои внутренние черные списки HTML, а выводят сообщение об ошибке, если обнаружен запрещенный код. (Вероятно, мудрый шаг с их стороны, но неудачный для целей этого вопроса.)