Я уже некоторое время работаю над чат-ботом TwitchTV Python, но я все еще осваиваю Python.
Это может показаться простым, но это смутило меня, поэтому я решил спросить:
В настоящее время я извлекаю сообщения из чата Twitch, используя 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)")
Текущий вывод: бот не получает сообщение и не запускает скриптовый код.
stri = str(msg)
? Я переименовал переменную str, потому что это недопустимое имя. - person Robin Carlier   schedule 25.08.2014