Я пытаюсь прочитать события из slack и вернуть ответ для соответствующего события.
Проблема в том, что когда я сопоставляю событие и возвращаю его в slack, это выдает мне ошибку:
IndexError: list index out of range
Фрагмент кода:
def readSlack():
regVal = re.compile(r"(CHG\w+)")
while True:
events = slack_client.rtm_read()
for event in events:
if (
'channel' in event and
'text' in event and
event.get('type') == 'message'
):
channel = event['channel']
text = event['text']
res = regVal.findall(text) ### output of res, res = ['CHG1234567']
change = res[0]
incomingSlack(change, channel)
time.sleep(1)
, и мое соединение с Slack разрывается.Когда я пытаюсь обработать исключение, добавив
res = regVal.findall(text) ### output of res, res = ['CHG1234567']
try:
change = res[0]
except IndexError:
print("Index Error ")
incomingSlack(change, channel)
Это будет выполняться в бесконечном цикле для того же события и спамить мой слабый канал.
Что я здесь не так делаю?