Я работал над небольшим скриптом, в котором я проверяю, является ли данная строка отфильтрованным или неотфильтрованным ключевым словом. В основном, если он отфильтрован, мы хотим добавить дополнительный ключ к dict. со значением True, если не фильтруется, то False. Как только это будет сделано, мы хотим вернуть True, если оно отфильтровано иначе False.
Прямо сейчас я сделал что-то вроде этого:
import re
payload = {"test_string": "hello World"}
def test(payload):
def check_all(sentence, words):
return all(re.search(r'b{}b'.format(word), sentence) for word in words)
filtered_keywords = ["hello+world", "testing"]
unfiltered_keywords = ["bad+word", "naughty+word"]
if not any(check_all(payload["test_string"].lower(), word.split("+")) for word in filtered_keywords) or any(check_all(payload["test_string"].lower(), word.split("+")) for word in unfiltered_keywords):
payload["keyword"] = False
# Thread to send to discord
# Thread(
# target=discord.create_embed,
# args=(
# payload,
# )
# ).start()
return False
else:
payload["keyword"] = True
# Thread(
# target=discord.create_embed,
# args=(
# payload,
# )
# ).start()
return True
print(test(payload))
Часть с Thread — это место, где я отправляю сообщение в Discord, а затем возвращаю True или False в зависимости от оператора if-else.
Смысл этого скрипта в том, что позже я отправлю полезную нагрузку со случайной строкой в будущем, чтобы она не была статической.
Если есть еще какие-либо вопросы или недостающая информация, пожалуйста, комментируйте 🙂
