up fix to sitenotimplementedexception
This commit is contained in:
		| @@ -78,6 +78,7 @@ class MasterService: | ||||
|             parser_mapping = { | ||||
|                 "my.mail.ru": MyMailParser(params), | ||||
|                 "www.youtube.com": BaseParser(params), | ||||
|                 "youtu.be": BaseParser(params), | ||||
|                 "vk.com": BaseParser(params), | ||||
|                 "ok.ru": BaseParser(params), | ||||
|                 "likee.video": BaseParser(params), | ||||
| @@ -98,13 +99,18 @@ class MasterService: | ||||
|                 "status": "done" | ||||
|             }) | ||||
|         except FileAlreadyExistException as ex: | ||||
|             # TODO: сделать так, чтобы грузился обычный, нам не нужно записывать что-то в редис | ||||
|             return Result(result_type=ResultTypeEnum.EXIST, value={ | ||||
|                 "link": video_params["link"], | ||||
|                 "result": ex.message, | ||||
|                 "status": "exist" | ||||
|             }) | ||||
|         except SiteNotImplementedException as ex: | ||||
|             return Result(result_type=ResultTypeEnum.EXCEPTION, value=ex.default_message) | ||||
|             return Result(result_type=ResultTypeEnum.EXCEPTION, value={ | ||||
|                 "link": video_params["link"], | ||||
|                 "result": ex.default_message, | ||||
|                 "status": "error" | ||||
|             }) | ||||
|         # TODO upload to server | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -8,6 +8,8 @@ class RedisClient: | ||||
|     TASKS_NAME = "tasks_working" | ||||
|     TASKS_DONE_NAME = "tasks_done" | ||||
|      | ||||
|     # TODO: переписать всё вазимодействие редиса обратно на ключ-значение | ||||
|  | ||||
|     def __init__(self): | ||||
|         self.connection = redis.Redis(host="localhost", port=6379, db=0) | ||||
|  | ||||
|   | ||||
| @@ -45,13 +45,29 @@ app.add_middleware( | ||||
| TypeError: string indices must be integers | ||||
| ''' | ||||
|  | ||||
| ''' | ||||
| queue_name -> [ | ||||
|     "{link...}", | ||||
|     "{link2...}", | ||||
|     "{link3..}" | ||||
| ] | ||||
|  | ||||
| queue_name -> { | ||||
|     "link1" -> {vars}, | ||||
|     "link2" -> {vars}, | ||||
|     "link3" -> {vars}, | ||||
| } | ||||
| ''' | ||||
|  | ||||
|  | ||||
| async def is_task_already_done_or_exist(redis: RedisClient, link: str): | ||||
|     messages = await redis.get_task_done_queue() | ||||
|  | ||||
|     temp = [json.loads(msg) for msg in messages] | ||||
|     print(temp) | ||||
|     tasks = [ | ||||
|         literal_eval(message.decode('utf-8')) for message in messages | ||||
|         if literal_eval(message.decode('utf-8'))["link"] == link | ||||
|            and literal_eval(message.decode('utf-8'))["status"] in ["done", "exist"] | ||||
|         msg for msg in temp | ||||
|         if msg["link"] == link | ||||
|            and msg["status"] in ["done", "exist"] | ||||
|     ] | ||||
|  | ||||
|     if len(tasks) > 0: | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 nikili0n
						nikili0n