IRC Bot反发誓

时间:2014-10-07 17:23:57

标签: python bots

我正在研究一个IRC机器人,我正在努力使反咒插件更容易。

它目前的工作方式如下:

if text.find('swearword') != -1:
message('Please do not use that word')

但是我想这样做,而不是为了每个发誓的话语而不必制作一个新的,我认为如果它是这样的话会更容易:if text.find(isinarray)。所以,如果它在数组中(我将把所有发誓的话放在那里),它将显示一条消息。

2 个答案:

答案 0 :(得分:0)

这是一个可以帮助您的简单代码

badwords = ["love", "peace", "hello"]
message = "hi I love you"
for badword in badwords:
  if (badword in message.lower()):
   print "oh thats bad /ban"

但我建议你为那个

做一个功能

这个检测系统非常简单,当然可以改进

答案 1 :(得分:0)

这是一些实际有效的代码。它完全忽略机器人消息。

@client.event
async def on_message(msg):
  author = msg.author
  channel = msg.channel
  for word in filtered_words:
    if word in msg.content:
      if msg.author.bot:
        return
      else:
        await msg.delete()
        await channel.send(author.mention, "You're not allowed to say that.")
        return
  await client.process_commands(msg)

希望有帮助:)