up
This commit is contained in:
		| @@ -39,7 +39,10 @@ class MasterService: | ||||
|     async def create_workers(self): | ||||
|         while True: | ||||
|             video_params = await self.queue.get() | ||||
|             #TODO: позднее написать функцию для определения парсера автоматически | ||||
|             redis = RedisClient() | ||||
|             # TODO: проверить что в редисе задача либо уже выполнена, т.е. сразу отдать ссылку, либо что она ранее была закончена с ошибкой | ||||
|             #       и проверять словарь self.currently_underway, для надёжности | ||||
|             await redis.del_task_from_queue_and_add_to_tasks(task=video_params) | ||||
|             self.currently_underway[video_params['link']] = video_params | ||||
|             download_task = self.loop.run_in_executor(self.executor, partial( | ||||
| @@ -50,6 +53,11 @@ class MasterService: | ||||
|             result = await download_task | ||||
|             await redis.del_task_from_tasks_and_add_to_task_done(task={"link": video_params["link"], "result": result}) | ||||
|             # TODO process result | ||||
|             ''' | ||||
|             Result.Done \ Result.Exist - уведомить что задача выполнена, и отослать во вторую очередь сообщений RabbitMQ сообщение об этом | ||||
|             Result.Error - в таблице Редиса для выполненых задач, пометить, что это ошибка и уведомить об этом по второй очереди сообщений | ||||
|             и потом почистить self.currently_underway | ||||
|             ''' | ||||
|             self.queue.task_done() | ||||
|  | ||||
|     @staticmethod | ||||
|   | ||||
| @@ -14,6 +14,7 @@ class MyMailParser(BaseParser): | ||||
|     BASE_DIR = os.path.abspath(f"downloads/MyMailRu") | ||||
|  | ||||
|     def get_video_link(self, playwright: Playwright): | ||||
|         # TODO: проверить качество видео | ||||
|         browser = playwright.chromium.launch(headless=True) | ||||
|         context = browser.new_context() | ||||
|         page = context.new_page() | ||||
|   | ||||
| @@ -45,3 +45,7 @@ class BaseParser: | ||||
|         except OSError as exception: | ||||
|             if exception.errno != errno.EEXIST: | ||||
|                 raise | ||||
|              | ||||
|     ''' | ||||
|     TODO: скорее всего добавить процедуру для конвертации итогого файла через ffmpeg, используя | ||||
|     ''' | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 nikili0n
						nikili0n