Добавить в корзинуПозвонить
Найти в Дзене
Signal Flow

Автоматическая цензура в Telegram-чатах

В публичных Telegram-чатах часто возникает проблема нецензурной лексики, которая портит атмосферу общения. ProfanityMiddleware — это интеллектуальное решение для автоматической фильтрации мата и оскорблений. 🔹 Как это работает?
Middleware анализирует все сообщения в реальном времени: Использует гибридный алгоритм: def _find_banned_words(self, text: str) -> Set[str]:
words = re.findall(r'\b\w+\b', text.lower())
found_words = {word for word in words if word in self.banned_words}
# Обнаружение вульгарных приставок
for word in words:
if self._contains_vulgar_prefix(word):
found_words.add(word)
return found_words def _replace_banned_words(self, text: str) -> str:
words = text.split()
for i, word in enumerate(words):
clean_word = re.sub(r'[^\w]', '', word.lower())
if clean_word in self.banned_words or self._contains_vulgar_prefix(clean_word):
words[i] = '*' * len(word)
return ' '.join(words) После уда
Оглавление
Автоматическая цензура в Telegram-чатах
Автоматическая цензура в Telegram-чатах

Чистота общения без модераторов

В публичных Telegram-чатах часто возникает проблема нецензурной лексики, которая портит атмосферу общения. ProfanityMiddleware — это интеллектуальное решение для автоматической фильтрации мата и оскорблений.

🔹 Как это работает?
Middleware анализирует все сообщения в реальном времени:

  • 🚫 Находит запрещённые слова (включая замаскированные)
  • ✂️ Удаляет оригинальное сообщение
  • 🔄 Публикует цензурированную версию
  • 💬 Сохраняет контекст переписки

📌 Основные функции

1. Умный поиск запрещённых слов

Использует гибридный алгоритм:

def _find_banned_words(self, text: str) -> Set[str]:
words = re.findall(r'\b\w+\b', text.lower())
found_words = {word for word in words if word in self.banned_words}

# Обнаружение вульгарных приставок
for word in words:
if self._contains_vulgar_prefix(word):
found_words.add(word)

return found_words

2. Автоматическая цензура

  • Заменяет мат на *** с сохранением длины слова
  • Обрабатывает:
    Обычные сообщения
    Подписи к медиа
    Отредактированные сообщения
def _replace_banned_words(self, text: str) -> str:
words = text.split()
for i, word in enumerate(words):
clean_word = re.sub(r'[^\w]', '', word.lower())
if clean_word in self.banned_words or self._contains_vulgar_prefix(clean_word):
words[i] = '*' * len(word)
return ' '.join(words)

3. Прозрачное уведомление участников

После удаления сообщения бот публикует предупреждение:

🔞 @username отправил (цензура):
"Это *** сообщение с недопустимой лексикой"

🚀 Где применять?

  • Публичные сообщества — поддержание культуры общения
  • Корпоративные чаты — профессиональная атмосфера
  • Образовательные проекты — безопасная среда для детей
  • Игровые сообщества — контроль токсичности

⚙️ Кастомизация

1. Собственные словари

banned_words = {"мат", "оскорбление", "травля"}
middleware = ProfanityMiddleware(banned_words)

2. Белые списки — исключения для админов

3. Система предупреждений — перед баном пользователя

📥 Как внедрить?

Готовое решение с открытым исходным кодом:
👉
GitHub: ProfanityMiddleware

🔗 Дополнительные возможности

  • Фильтрация стикеров и мемов с неприемлемым содержанием
  • Анализ сленга и завуалированных оскорблений
  • Интеграция с системами банов

💡 Нужна профессиональная модерация чата?
Команда
ELSE разрабатывает комплексные решения:
✅ Умные фильтры нецензурной лексики
✅ Кастомизированные правила для вашего сообщества
✅ Автоматические системы предупреждений

Закажите бота-модератора на else.com.ru

#TelegramМодерация #ЧистыйЧат #АвтоЦензура #БезМата #ТелеграмБоты