Hallo Forum,
Ich schreibe gerade an einem IRC Bot der auf die Streaming Seite
twitch.tv zugeschnitten ist. Der Bot soll Chats moderieren können.
Geschrieben wird der Bot in Python 3.4.3
Gerade kleine Streamer möchten gerne, das neue Zuschauer erkannt, und
automatisch begrüßt werden.
Um eine Liste aller aktuellen Zuschauer zu bekommen soll man diesen
Request benutzen:
1 | http://tmi.twitch.tv/group/user/esl_csgo/chatters
|
"esl_csgo" ist dabei der Name des Kanals, und kann gegen jeden anderen
twitch-kanal ausgetauscht werden. Der Request kann so in die
Browserleiste eingegeben werden.
Mit dem Request bekommt man jedes mal eine komplette Liste aller
aktuellen Zuschauer. Bei kleinen Kanälen ist das alles kein Problem,
aber bei großen Kanälen (wie jetzt gerade esl_csgo als extrem Beispiel)
sind jetzt gerade, wo ich das schreibe, 139k Zuschauer eingelogt.
Wie finde ich jetzt am besten einen neuen Zuschauer in dieser Liste?
t = 0: Liste 1 wird erstellt: 139.000 Zuschauer
t = 1: Liste 2 wird erstellt: 139.001 Zuschauer
Muss ich jetzt wirklich 139k mal 139k vergleiche durchführen, um den
neuen Zuschauer zu finden, oder gibt es da einen besseren Weg?
Die Liste der Zuschauer nach Anfangsbuchstabe splitten bringt meiner
meinung nach nicht viel, da ich ja immer noch jeden eintrag mit jedem
vergleichen muss (zumindestens innerhalb der gesplitteten liste)
Selbst wenn ich das ganze in eine Datenbank (SQLite) schreiben würde,
müsste ich immer noch 139.001 anfragen an die DB schicken um
festzustellen, ob der Name schon drin steht oder nicht.
Habt Ihr eine Idee ob/wie das besser geht?
Irgendwie steh ich da gerade auf dem Schlauch :-/
Grüße