Я создаю дерганного бота, чтобы читать чат в моей ленте.Но когда я пытаюсь .split () входящей строки на отдельные строки, чтобы изолировать имя пользователя и сообщение, он отображает дополнительные 'и ["'"].когда я пытаюсь распечатать строки отдельно по индексу, я получаю ошибку индекса.
Ниже приведен код, который отлично связывает чат с твиком, и результат, когда я набираю «test» в чате.
from settings import *
import socket
import threading
class twitch:
def __init__(self, host, port, nick, pwd, channel):
self.s = socket.socket()
self.s.connect((host, port))
self.s.send(bytes("PASS " + pwd + "\r\n", "UTF-8"))
self.s.send(bytes("NICK " + nick + "\r\n", "UTF-8"))
self.s.send(bytes("JOIN #" + channel + " \r\n", "UTF-8"))
self.s.send(bytes("PRIVMSG #" + channel + " :" + "Connected " + "\r\n", "UTF-8"))
self.alive = True
readerthread = threading.Thread(target=self.read_chat)
readerthread.start()
def read_chat(self):
while self.alive:
for line in str(self.s.recv(1024)).split('\\r\\n'):
if "PING :tmi.twitch.tv" in line:
print(time.strftime("%H:%M:%S"), "PONG :tmi.twitch.tv")
s.send(bytes("PONG :tmi.twitch.tv\r\n", "UTF-8"))
else:
print(line)
parts = line.split(":")
print(parts)
def main():
tc = twitch(HOST, PORT, NICK, PASS, CHANNEL)
Печать строки (строки) на консоли приводит к: b ': username! Username@username.tmi.twitch.tv PRIVMSG #username: test
Однако, когда я разделяюстрока и распечатывает список строк (частей), которые это производит: ["b" "," имя пользователя! имя_пользователя@username.tmi.twitch.tv PRIVMSG #username "," тест "] '["' "]