Python |如何限制IRC机器人中的命令?

时间:2014-01-17 23:59:02

标签: python command bots irc restrict

如何限制用Python编写的IRC bot中的命令?

例如我有:

data. = irc.recv(2048)

if data.find("^cmd",7) != -1:
    irc.send('PRIVMSG ' + channel + ' :' + 'do_something' + '\r\n')

但是如果有任何用户写bla bla ^cmdblabla它也会有效。我不想要它,所以我怎么能限制它呢?试过len()但是没有机会这样做。似乎regexp也无济于事。

1 个答案:

答案 0 :(得分:1)

您需要使用允许的参数编写元组。例如:

commands = ("some_command", "other_command", "this_continues")

然后只是:

if not command in commands:
    print("Unrecognized command.")

您必须先解析数据才能获得命令。也许是这样的:

command = data[:data.find(" ")]
# And here the code above

希望它有所帮助。