我已经在 TwitchTV Python 聊天机器人上工作了一段时间,但我仍然在掌握 Python。
这似乎很简单,但这让我感到困惑,所以我决定问:
我目前正在使用 Twitch Chat 提取消息data = irc.recv
我想要做的是使用提取的数据并将其转换为字符串,这样我就可以使用检查消息中的大写字母str.isupper()
我已经尝试了几种方法;
data = irc.recv (4096)
msg = data()
capsTime = "30s"
str = msg
if str.isupper():
message("[-] Woah! Hold back on the caps! (Timeout " + capsTime + ")")
message("/timeout " + user + capsTime)
# variable "user" already defined
这只是一个,不幸的是没有工作。
编辑:
这是我的新代码,它运行时没有错误消息,但它没有按我的意愿运行;
while True:
data = irc.recv (4096)
user = data.split(':')[1]
user = user.split('!')[0]
caps = data.split(':')[0]
capsmsg = str(data)
print data
if data.find('PING') != -1:
irc.send('PONG ' + data.split()[1] + '\r\n')
if capsmsg.isupper():
message("[-] Woah! Hold back on the caps, " + user + "! (Timeout 30s)")
message("/timeout " + user + " 30s")
编辑2:
预期输出:如果在所有大写字母中找到一条消息,它将打印此消息并让用户超时:
message("[-] Woah! Hold back on the caps, " + user + "! (Timeout 30s)")
当前输出:机器人不会选择消息或运行脚本代码。