我已经在TwitchTV Python聊天机器人上工作了一段时间,但我仍然在掌握Python。
看起来很简单,但这让我很困惑所以我决定问:
我目前正在使用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)")
当前输出: 机器人不会选择消息或运行脚本代码。
答案 0 :(得分:0)
试试这个:
data = irc.recv (4096)
# msg = data()
capsTime = "30s"
mystr = repr(data)
if mystr.isupper():
message("[-] Woah! Hold back on the caps! (Timeout " + capsTime + ")")
message("/timeout " + user + capsTime)
# variable "user" already defined
不要使用保留关键字。