Format code
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
|
||||
import asyncio
|
||||
|
||||
|
||||
class Buffer(asyncio.Queue):
|
||||
'''
|
||||
チャットデータを格納するバッファの役割を持つFIFOキュー
|
||||
@@ -10,19 +12,20 @@ class Buffer(asyncio.Queue):
|
||||
格納するチャットブロックの最大個数。0の場合は無限。
|
||||
最大値を超える場合は古いチャットブロックから破棄される。
|
||||
'''
|
||||
def __init__(self,maxsize = 0):
|
||||
|
||||
def __init__(self, maxsize=0):
|
||||
super().__init__(maxsize)
|
||||
|
||||
async def put(self,item):
|
||||
|
||||
async def put(self, item):
|
||||
if item is None:
|
||||
return
|
||||
return
|
||||
if super().full():
|
||||
super().get_nowait()
|
||||
await super().put(item)
|
||||
|
||||
def put_nowait(self,item):
|
||||
def put_nowait(self, item):
|
||||
if item is None:
|
||||
return
|
||||
return
|
||||
if super().full():
|
||||
super().get_nowait()
|
||||
super().put_nowait(item)
|
||||
@@ -32,4 +35,4 @@ class Buffer(asyncio.Queue):
|
||||
ret.append(await super().get())
|
||||
while not super().empty():
|
||||
ret.append(super().get_nowait())
|
||||
return ret
|
||||
return ret
|
||||
|
||||
@@ -169,7 +169,7 @@ class LiveChatAsync:
|
||||
continuation, session, headers)
|
||||
metadata, chatdata = self._parser.parse(contents)
|
||||
|
||||
timeout = metadata['timeoutMs']/1000
|
||||
timeout = metadata['timeoutMs'] / 1000
|
||||
chat_component = {
|
||||
"video_id": self.video_id,
|
||||
"timeout": timeout,
|
||||
@@ -177,14 +177,15 @@ class LiveChatAsync:
|
||||
}
|
||||
time_mark = time.time()
|
||||
if self._direct_mode:
|
||||
processed_chat = self.processor.process([chat_component])
|
||||
processed_chat = self.processor.process(
|
||||
[chat_component])
|
||||
if isinstance(processed_chat, tuple):
|
||||
await self._callback(*processed_chat)
|
||||
else:
|
||||
await self._callback(processed_chat)
|
||||
else:
|
||||
await self._buffer.put(chat_component)
|
||||
diff_time = timeout - (time.time()-time_mark)
|
||||
diff_time = timeout - (time.time() - time_mark)
|
||||
await asyncio.sleep(diff_time)
|
||||
continuation = metadata.get('continuation')
|
||||
except ChatParseException as e:
|
||||
|
||||
Reference in New Issue
Block a user