def clear_channel(self, channel):
current_index = None
last_index = None
num_errors = 0
while current_index != -1:
if num_errors >= 5:
break
try:
async for message in self.logs_from(channel, before=current_index):
current_index = message
await self.delete_message(message)
except ServerDisconnectedError:
try:
async for message in self.logs_from(channel, before=current_index):
current_index = message
await self.delete_message(message)
except Exception:
num_errors += 1
continue
except Exception:
num_errors += 1
continue
if last_index == current_index:
break
last_index = current_index
评论列表
文章目录