Commit 46f8e0be by baiquan

refactor(task): 重构任务获取逻辑

- 新增 TaskType枚举类,用于定义任务类型
- 修改 get_task 和 callback_task 函数,增加任务类型参数- 优化任务获取逻辑,根据任务类型调用不同的 API
- 更新 shop.py 和 upload_image_and_video.py,使用新的任务类型参数- 修复了一些与任务相关的小问题
parent 532411b1
...@@ -11,7 +11,7 @@ from config import settings ...@@ -11,7 +11,7 @@ from config import settings
from service.doudian_request import doudian_request from service.doudian_request import doudian_request
from service.upload_video import upload_video_with_multithreading, download_video from service.upload_video import upload_video_with_multithreading, download_video
from utils.common import check_proxy, callback_task from utils.common import check_proxy, callback_task
from utils.constant import TaskType
# 图片转换成正方形 # 图片转换成正方形
...@@ -187,7 +187,7 @@ async def uploadImageAndVideo(task: dict = None): ...@@ -187,7 +187,7 @@ async def uploadImageAndVideo(task: dict = None):
# "type": 2 # "type": 2
} }
logger.info(json.dumps(callback_data)) logger.info(json.dumps(callback_data))
await callback_task(callback_data, 2) await callback_task(callback_data, TaskType.DOUDIAN_UPLOAD_IMAGE_AND_VIDEO)
async def run_in_executor(func, *args): async def run_in_executor(func, *args):
"""在异步环境中运行同步函数""" """在异步环境中运行同步函数"""
......
import asyncio import asyncio
import json import json
import sys
import time import time
import concurrent.futures import concurrent.futures
from loguru import logger from loguru import logger
...@@ -9,6 +10,9 @@ from service.upload_image_and_video import uploadImageAndVideo ...@@ -9,6 +10,9 @@ from service.upload_image_and_video import uploadImageAndVideo
from utils.common import callback_task, formatCallback, get_task from utils.common import callback_task, formatCallback, get_task
import os import os
from utils.constant import TaskType
# 创建 logs 目录(如果不存在) # 创建 logs 目录(如果不存在)
os.makedirs("logs", exist_ok=True) os.makedirs("logs", exist_ok=True)
...@@ -104,7 +108,7 @@ async def syncShop(task: dict = None): ...@@ -104,7 +108,7 @@ async def syncShop(task: dict = None):
} }
}) })
logger.info(json.dumps(callback_data)) logger.info(json.dumps(callback_data))
await callback_task(callback_data, task_type=1) await callback_task(callback_data, TaskType.DOUDIAN_SHOP_LOGIN)
if browser_default_id: if browser_default_id:
await closeBrowser(browser_default_id) await closeBrowser(browser_default_id)
return return
...@@ -157,21 +161,21 @@ async def handle_task(task): ...@@ -157,21 +161,21 @@ async def handle_task(task):
else: else:
logger.warning(f"未知任务类型: {type_}, 跳过处理") logger.warning(f"未知任务类型: {type_}, 跳过处理")
async def run(): async def run(task_type):
upload_data = { upload_data = {
'queue': 'task-queue', 'queue': 'task-queue',
'number': 1 'number': 1
} }
try: try:
tasks = await get_task(upload_data) tasks = await get_task(upload_data, task_type)
# tasks = {"data": [{"app_name": "admin", "type": 1, "browser_type": 1, "browser_id": "1111095672"},]} # tasks = {"data": [{"app_name": "admin", "type": 1, "browser_type": 1, "browser_id": "1111095672"},]}
# {"app_name": "admin", "type": 1, "browser_type": 1, "browser_id": "1111095694"}, # {"app_name": "admin", "type": 1, "browser_type": 1, "browser_id": "1111095694"},
# {"app_name": "admin", "type": 1, "browser_type": 1, "browser_id": "1180779018"}, # {"app_name": "admin", "type": 1, "browser_type": 1, "browser_id": "1180779018"},
# {"app_name": "admin", "type": 1, "browser_type": 1, "browser_id": "1180779004"}, # {"app_name": "admin", "type": 1, "browser_type": 1, "browser_id": "1180779004"},
# {"app_name": "admin", "type": 1, "browser_type": 1, "browser_id": "1180779061"},]} # {"app_name": "admin", "type": 1, "browser_type": 1, "browser_id": "1180779061"},]}
# tasks = {"code": 0, "message": "success", "data": {"item_id": 921707219436, "headers": {"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.6779.0 Safari/537.36", "sec-ch-ua": "Google Chrome\";v=\"131\", \"Chromium\";v=\"131\", \"Not_A Brand\";v=\"24\""}, "cookie": {"gfkadpd": "4272,23756", "passport_csrf_token": "085a146f3e5c7d6ffb291c1aa81f9a71", "passport_csrf_token_default": "085a146f3e5c7d6ffb291c1aa81f9a71", "ttcid": "53c81c77b3bb489d8e84e74c691a021215", "s_v_web_id": "verify_mcoicpk4_2db5c5bb_310b_79d4_f6ab_49a6ef264e36", "gd_random": "eyJtYXRjaCI6dHJ1ZSwicGVyY2VudCI6MC4xOTIxMTQ1NTI3NDIzNDU4fQ==.inx0kgU3DeIysiYrTzVjrJ3hImpr9GRyY/JD5oCWoyQ=", "zsgw_business_data": "%7B%22uuid%22%3A%22cb5919b0-458b-4624-8b98-d892792f45b9%22%2C%22platform%22%3A%22pc%22%2C%22source%22%3A%22seo.fxg.jinritemai.com%22%7D", "ecom_gray_shop_id": "225564417", "HMACCOUNT": "6BDCEA5FD75B2174", "x-web-secsdk-uid": "ba0eebd6-4bd8-48de-b5c2-8032db5e8e81", "PIGEON_CID": "7522394902744882724", "SHOP_ID": "225564417", "_tea_utm_cache_472893": "undefined", "_tea_utm_cache_643623": "undefined", "Secure": "True", "gf_part_3164895": "74", "_shop_token_": "ed474a2a302be0aff7eddac117584630", "ffa_goods_ewid": "027a8000ef7f24b9d22481d700a7eb34", "ffa_goods_seraph_did": "undefined", "Hm_lvt_b6520b076191ab4b36812da4c90f7a5e": "1751614184,1752025016", "ttwid": "1%7C5T5KdCu_h9A6pP4qtqJkuvnCdPsfIRAm_dESgkSngmw%7C1752230963%7Cd53db946aa81740ad6e6d58ff0088d40c3ea5d8b436d38413c46709cfcff0b01", "tt_scid": "2KhbBXGi8bq7NY4eEzJ5Ufm6FSnwaPn4YCYNBgBV.5o8p9.vxD3GDJ3vNHnJjomae74f", "d_ticket_doudian": "fdc963a28a3d01565c5cdd7c5ca9370589493", "n_mh_doudian": "9-mIeuD4wZnlYrrOvfzG3MuT6aQmCUtmr8FxV8Kl8xY", "odin_tt": "e6355d3676dde538ff181f527dc4c41eff64064ef8cad5dcc1025a0e4cb6c85c22670aa3949866ec315660abc92b616b2b91a2e1a8a22c932b76f80ecdb16664", "passport_mfa_token": "CjH6e8E1oe3y3s4Dnhr%2FwwzAVTZiA4ZF0NgsK5ukU9XG6f%2B4oIxVrT6I2159TRkWiJeaGkoKPAAAAAAAAAAAAABPOLzKSMDQhC8NS2qIXsj2pRnOTqs1KCiBjE%2BljrWpk1yLHjX5arEfMaaO0bHRcP57%2BhC7ufYNGPax0WwgAiIBA2h3AgA%3D", "session_tlb_tag": "sttt%7C10%7CABEYXGW9YgvKXr0ig8tAaP________-h9ea8ZAQgTyGsZJXe3JHrS14yvoUHqDuvWyWWQBfImjs%3D", "sid_ucp_sso_v1_doudian": "1.0.0-KGU0Y2RkNjIyODFjZjZiZDJlOTlmMGFhYThhN2M3MzUwMzliMjQ4Y2YKHwjHtKCqrKyYBBC72MPDBhiwISAMMPuoscEGOAFA6wcaAmhsIiA3ZGViOTY4MWM2YWY1MDczY2VhZTI2OThjMzUyNmMzZg", "ssid_ucp_sso_v1_doudian": "1.0.0-KGU0Y2RkNjIyODFjZjZiZDJlOTlmMGFhYThhN2M3MzUwMzliMjQ4Y2YKHwjHtKCqrKyYBBC72MPDBhiwISAMMPuoscEGOAFA6wcaAmhsIiA3ZGViOTY4MWM2YWY1MDczY2VhZTI2OThjMzUyNmMzZg", "sso_uid_tt_doudian": "233262f0e2201aebe809a7a97ecf022d", "sso_uid_tt_ss_doudian": "233262f0e2201aebe809a7a97ecf022d", "toutiao_sso_user_doudian": "7deb9681c6af5073ceae2698c3526c3f", "toutiao_sso_user_ss_doudian": "7deb9681c6af5073ceae2698c3526c3f", "ucas_sso_c0_doudian": "CkEKBTEuMC4wEKKIgbjlhru4aBjmJiDI3ICqrKzkAiiwITDHtKCqrKyYBEC-2MPDBki-jIDGBlCkvMWy8Mm6smhYbxIUwHgyZP-VYrNHnWycmKXWIA8Vg_4", "ucas_sso_c0_ss_doudian": "CkEKBTEuMC4wEKKIgbjlhru4aBjmJiDI3ICqrKzkAiiwITDHtKCqrKyYBEC-2MPDBki-jIDGBlCkvMWy8Mm6smhYbxIUwHgyZP-VYrNHnWycmKXWIA8Vg_4", "ucas_c0": "CkEKBTEuMC4wEKKIia7chru4aBjmJiDI3ICqrKzkAiiwITDHtKCqrKyYBEC-2MPDBki-jIDGBlCkvMWy8Mm6smhYbxIU6MBKgzZvfJFEpQfFPi2ecy1UGEQ", "ucas_c0_ss": "CkEKBTEuMC4wEKKIia7chru4aBjmJiDI3ICqrKzkAiiwITDHtKCqrKyYBEC-2MPDBki-jIDGBlCkvMWy8Mm6smhYbxIU6MBKgzZvfJFEpQfFPi2ecy1UGEQ", "PHPSESSID": "201b8255bfb1cf7538bb1d090332eef2", "PHPSESSID_SS": "201b8255bfb1cf7538bb1d090332eef2", "is_staff_user": "false", "sessionid": "0011185c65bd620bca5ebd2283cb4068", "sessionid_ss": "0011185c65bd620bca5ebd2283cb4068", "sid_guard": "0011185c65bd620bca5ebd2283cb4068%7C1752230990%7C5184000%7CTue%2C+09-Sep-2025+10%3A49%3A50+GMT", "sid_tt": "0011185c65bd620bca5ebd2283cb4068", "sid_ucp_v1": "1.0.0-KGFkNzFkNmYzODAwZGI5OGM0NGQ5NzA3M2QxNjAyMWM2Njc2N2I5MTgKGQjHtKCqrKyYBBDO2MPDBhiwISAMOAFA6wcaAmxmIiAwMDExMTg1YzY1YmQ2MjBiY2E1ZWJkMjI4M2NiNDA2OA", "ssid_ucp_v1": "1.0.0-KGFkNzFkNmYzODAwZGI5OGM0NGQ5NzA3M2QxNjAyMWM2Njc2N2I5MTgKGQjHtKCqrKyYBBDO2MPDBhiwISAMOAFA6wcaAmxmIiAwMDExMTg1YzY1YmQ2MjBiY2E1ZWJkMjI4M2NiNDA2OA", "uid_tt": "506f7b0c81c01d7514c886854f5a79cd", "uid_tt_ss": "506f7b0c81c01d7514c886854f5a79cd", "COMPASS_LUOPAN_DT": "session_7525773154556346650", "BUYIN_SASID": "SID2_7525774050096169251", "Hm_lpvt_b6520b076191ab4b36812da4c90f7a5e": "1752230958", "csrf_session_id": "a863c649f0721c8150f5bda69b659380", "source": "seo.fxg.jinritemai.com"}, "proxies": "socks5h://hwK7px85A9cNB9wR:vEh67THqHh2Xjpj3@58.251.252.66:9001", "skus": [{"sku_id": "809490529481131183", "image": "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e10c2dda.jpg"}, {"sku_id": "871626639039123243", "image": "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e1113966.jpg"}, {"sku_id": "727997144358380388", "image": "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e1157b12.jpg"}], "images": ["http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e0fcfe49.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e1003a57.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e10308d6.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e105d8bc.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e107ea6d.jpg"], "description": ["http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e1175948.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e11a1ba4.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e11e1259.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e1218e11.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e12586e5.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e1276dfc.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e12b860c.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e12e83c0.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e1323a3d.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e1352ab0.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e137c861.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e13ae9ad.jpg"], "video_list": ["https://cloud.video.taobao.com/play/u/3546714953/p/2/e/6/t/1/518590669530.mp4?appKey=38829"], "title": "2025\u590f\u5b63\u65b0\u6b3e\u5f3a\u529b\u706d\u868a\u706f\u5bb6\u7528\u84dd\u5149\u8bf1\u868a\u706f", "type": 2}, "status_code": 200} # tasks = {"code": 0, "message": "success", "data": {"item_id": 921707219436, "headers": {"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.6779.0 Safari/537.36", "sec-ch-ua": "Google Chrome\";v=\"131\", \"Chromium\";v=\"131\", \"Not_A Brand\";v=\"24\""}, "cookie": {"gfkadpd": "4272,23756", "passport_csrf_token": "085a146f3e5c7d6ffb291c1aa81f9a71", "passport_csrf_token_default": "085a146f3e5c7d6ffb291c1aa81f9a71", "ttcid": "53c81c77b3bb489d8e84e74c691a021215", "s_v_web_id": "verify_mcoicpk4_2db5c5bb_310b_79d4_f6ab_49a6ef264e36", "gd_random": "eyJtYXRjaCI6dHJ1ZSwicGVyY2VudCI6MC4xOTIxMTQ1NTI3NDIzNDU4fQ==.inx0kgU3DeIysiYrTzVjrJ3hImpr9GRyY/JD5oCWoyQ=", "zsgw_business_data": "%7B%22uuid%22%3A%22cb5919b0-458b-4624-8b98-d892792f45b9%22%2C%22platform%22%3A%22pc%22%2C%22source%22%3A%22seo.fxg.jinritemai.com%22%7D", "ecom_gray_shop_id": "225564417", "HMACCOUNT": "6BDCEA5FD75B2174", "x-web-secsdk-uid": "ba0eebd6-4bd8-48de-b5c2-8032db5e8e81", "PIGEON_CID": "7522394902744882724", "SHOP_ID": "225564417", "_tea_utm_cache_472893": "undefined", "_tea_utm_cache_643623": "undefined", "Secure": "True", "gf_part_3164895": "74", "_shop_token_": "ed474a2a302be0aff7eddac117584630", "ffa_goods_ewid": "027a8000ef7f24b9d22481d700a7eb34", "ffa_goods_seraph_did": "undefined", "Hm_lvt_b6520b076191ab4b36812da4c90f7a5e": "1751614184,1752025016", "ttwid": "1%7C5T5KdCu_h9A6pP4qtqJkuvnCdPsfIRAm_dESgkSngmw%7C1752230963%7Cd53db946aa81740ad6e6d58ff0088d40c3ea5d8b436d38413c46709cfcff0b01", "tt_scid": "2KhbBXGi8bq7NY4eEzJ5Ufm6FSnwaPn4YCYNBgBV.5o8p9.vxD3GDJ3vNHnJjomae74f", "d_ticket_doudian": "fdc963a28a3d01565c5cdd7c5ca9370589493", "n_mh_doudian": "9-mIeuD4wZnlYrrOvfzG3MuT6aQmCUtmr8FxV8Kl8xY", "odin_tt": "e6355d3676dde538ff181f527dc4c41eff64064ef8cad5dcc1025a0e4cb6c85c22670aa3949866ec315660abc92b616b2b91a2e1a8a22c932b76f80ecdb16664", "passport_mfa_token": "CjH6e8E1oe3y3s4Dnhr%2FwwzAVTZiA4ZF0NgsK5ukU9XG6f%2B4oIxVrT6I2159TRkWiJeaGkoKPAAAAAAAAAAAAABPOLzKSMDQhC8NS2qIXsj2pRnOTqs1KCiBjE%2BljrWpk1yLHjX5arEfMaaO0bHRcP57%2BhC7ufYNGPax0WwgAiIBA2h3AgA%3D", "session_tlb_tag": "sttt%7C10%7CABEYXGW9YgvKXr0ig8tAaP________-h9ea8ZAQgTyGsZJXe3JHrS14yvoUHqDuvWyWWQBfImjs%3D", "sid_ucp_sso_v1_doudian": "1.0.0-KGU0Y2RkNjIyODFjZjZiZDJlOTlmMGFhYThhN2M3MzUwMzliMjQ4Y2YKHwjHtKCqrKyYBBC72MPDBhiwISAMMPuoscEGOAFA6wcaAmhsIiA3ZGViOTY4MWM2YWY1MDczY2VhZTI2OThjMzUyNmMzZg", "ssid_ucp_sso_v1_doudian": "1.0.0-KGU0Y2RkNjIyODFjZjZiZDJlOTlmMGFhYThhN2M3MzUwMzliMjQ4Y2YKHwjHtKCqrKyYBBC72MPDBhiwISAMMPuoscEGOAFA6wcaAmhsIiA3ZGViOTY4MWM2YWY1MDczY2VhZTI2OThjMzUyNmMzZg", "sso_uid_tt_doudian": "233262f0e2201aebe809a7a97ecf022d", "sso_uid_tt_ss_doudian": "233262f0e2201aebe809a7a97ecf022d", "toutiao_sso_user_doudian": "7deb9681c6af5073ceae2698c3526c3f", "toutiao_sso_user_ss_doudian": "7deb9681c6af5073ceae2698c3526c3f", "ucas_sso_c0_doudian": "CkEKBTEuMC4wEKKIgbjlhru4aBjmJiDI3ICqrKzkAiiwITDHtKCqrKyYBEC-2MPDBki-jIDGBlCkvMWy8Mm6smhYbxIUwHgyZP-VYrNHnWycmKXWIA8Vg_4", "ucas_sso_c0_ss_doudian": "CkEKBTEuMC4wEKKIgbjlhru4aBjmJiDI3ICqrKzkAiiwITDHtKCqrKyYBEC-2MPDBki-jIDGBlCkvMWy8Mm6smhYbxIUwHgyZP-VYrNHnWycmKXWIA8Vg_4", "ucas_c0": "CkEKBTEuMC4wEKKIia7chru4aBjmJiDI3ICqrKzkAiiwITDHtKCqrKyYBEC-2MPDBki-jIDGBlCkvMWy8Mm6smhYbxIU6MBKgzZvfJFEpQfFPi2ecy1UGEQ", "ucas_c0_ss": "CkEKBTEuMC4wEKKIia7chru4aBjmJiDI3ICqrKzkAiiwITDHtKCqrKyYBEC-2MPDBki-jIDGBlCkvMWy8Mm6smhYbxIU6MBKgzZvfJFEpQfFPi2ecy1UGEQ", "PHPSESSID": "201b8255bfb1cf7538bb1d090332eef2", "PHPSESSID_SS": "201b8255bfb1cf7538bb1d090332eef2", "is_staff_user": "false", "sessionid": "0011185c65bd620bca5ebd2283cb4068", "sessionid_ss": "0011185c65bd620bca5ebd2283cb4068", "sid_guard": "0011185c65bd620bca5ebd2283cb4068%7C1752230990%7C5184000%7CTue%2C+09-Sep-2025+10%3A49%3A50+GMT", "sid_tt": "0011185c65bd620bca5ebd2283cb4068", "sid_ucp_v1": "1.0.0-KGFkNzFkNmYzODAwZGI5OGM0NGQ5NzA3M2QxNjAyMWM2Njc2N2I5MTgKGQjHtKCqrKyYBBDO2MPDBhiwISAMOAFA6wcaAmxmIiAwMDExMTg1YzY1YmQ2MjBiY2E1ZWJkMjI4M2NiNDA2OA", "ssid_ucp_v1": "1.0.0-KGFkNzFkNmYzODAwZGI5OGM0NGQ5NzA3M2QxNjAyMWM2Njc2N2I5MTgKGQjHtKCqrKyYBBDO2MPDBhiwISAMOAFA6wcaAmxmIiAwMDExMTg1YzY1YmQ2MjBiY2E1ZWJkMjI4M2NiNDA2OA", "uid_tt": "506f7b0c81c01d7514c886854f5a79cd", "uid_tt_ss": "506f7b0c81c01d7514c886854f5a79cd", "COMPASS_LUOPAN_DT": "session_7525773154556346650", "BUYIN_SASID": "SID2_7525774050096169251", "Hm_lpvt_b6520b076191ab4b36812da4c90f7a5e": "1752230958", "csrf_session_id": "a863c649f0721c8150f5bda69b659380", "source": "seo.fxg.jinritemai.com"}, "proxies": "socks5h://hwK7px85A9cNB9wR:vEh67THqHh2Xjpj3@58.251.252.66:9001", "skus": [{"sku_id": "809490529481131183", "image": "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e10c2dda.jpg"}, {"sku_id": "871626639039123243", "image": "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e1113966.jpg"}, {"sku_id": "727997144358380388", "image": "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e1157b12.jpg"}], "images": ["http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e0fcfe49.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e1003a57.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e10308d6.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e105d8bc.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e107ea6d.jpg"], "description": ["http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e1175948.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e11a1ba4.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e11e1259.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e1218e11.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e12586e5.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e1276dfc.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e12b860c.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e12e83c0.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e1323a3d.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e1352ab0.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e137c861.jpg", "http://159.75.92.198:8808/uploads/20250627/921707219436/685e6e13ae9ad.jpg"], "video_list": [""], "title": "2025\u590f\u5b63\u65b0\u6b3e\u5f3a\u529b\u706d\u868a\u706f\u5bb6\u7528\u84dd\u5149\u8bf1\u868a\u706f", "type": 2}, "status_code": 200}
except: except Exception as e:
logger.error('获取任务失败') logger.error(f'获取任务失败 --> {e}')
return return
logger.info(json.dumps(tasks)) logger.info(json.dumps(tasks))
tasks = tasks.get('data', tasks) tasks = tasks.get('data', tasks)
...@@ -212,7 +216,14 @@ if __name__ == '__main__': ...@@ -212,7 +216,14 @@ if __name__ == '__main__':
OUTER_MAX_WORKERS = 5 OUTER_MAX_WORKERS = 5
# 内层线程池大小(每个任务) # 内层线程池大小(每个任务)
INNER_MAX_WORKERS = 3 INNER_MAX_WORKERS = 3
argv = sys.argv
print(argv)
if len(argv) != 2:
logger.error("请传入任务类型(1为店铺登录,2为上传图片与视频)")
sys.exit(0)
else:
task_type = argv[1]
while True: while True:
asyncio.run(run()) asyncio.run(run(task_type))
time.sleep(10) time.sleep(10)
...@@ -3,7 +3,7 @@ import random ...@@ -3,7 +3,7 @@ import random
import time import time
from hashlib import md5 from hashlib import md5
from urllib.parse import urlparse from urllib.parse import urlparse
from utils.constant import TaskType
import requests import requests
from loguru import logger from loguru import logger
from config import settings from config import settings
...@@ -211,20 +211,19 @@ def encryptParams(account, password): ...@@ -211,20 +211,19 @@ def encryptParams(account, password):
return e return e
async def get_task(params: dict = None): async def get_task(params: dict = None, task_type:int = TaskType.DOUDIAN_SHOP_LOGIN):
""" """
获取任务 获取任务
:param params:
:param task_type:
:return:
""" """
publish_task = requests.get(f"{settings.DOMAIN}/api/collection/task/getPublishTask", headers=DEFAULT_HEADER).json() if task_type == TaskType.DOUDIAN_SHOP_LOGIN:
collection_task = requests.get(f'{settings.DOMAIN}/api/collection/task', headers=DEFAULT_HEADER, params=params).json() return requests.get(f"{settings.DOMAIN}/api/collection/task", headers=DEFAULT_HEADER, params=params).json()
tasks = [] elif task_type == TaskType.DOUDIAN_UPLOAD_IMAGE_AND_VIDEO:
publish_task_data = publish_task.get('data', []) return requests.get(f"{settings.DOMAIN}/api/collection/task/getPublishTask", headers=DEFAULT_HEADER).json()
collection_task_data = collection_task.get('data', []) else:
if publish_task_data: raise Exception(f"未知任务类型 --> {task_type}")
tasks.append(publish_task_data)
tasks.extend(collection_task_data)
collection_task['data'] = tasks
return collection_task
async def callback_task(data: dict, task_type:int): async def callback_task(data: dict, task_type:int):
""" """
...@@ -233,18 +232,17 @@ async def callback_task(data: dict, task_type:int): ...@@ -233,18 +232,17 @@ async def callback_task(data: dict, task_type:int):
:param task_type: :param task_type:
:return: :return:
""" """
if task_type == 1: if task_type == TaskType.DOUDIAN_SHOP_LOGIN:
return requests.post(f"{settings.DOMAIN}/api/collection/task", json=data, headers=DEFAULT_HEADER) return requests.post(f"{settings.DOMAIN}/api/collection/task", json=data, headers=DEFAULT_HEADER)
elif task_type == 2: elif task_type == TaskType.DOUDIAN_UPLOAD_IMAGE_AND_VIDEO:
return requests.post(f"{settings.DOMAIN}/api/collection/task/callBackPublishTask", json=data, headers=DEFAULT_HEADER) return requests.post(f"{settings.DOMAIN}/api/collection/task/callBackPublishTask", json=data, headers=DEFAULT_HEADER)
else: else:
raise Exception("task_type error") raise Exception(f"未知任务类型 --> {task_type}")
async def formatCallback(task: dict, result: dict) -> dict: async def formatCallback(task: dict, result: dict) -> dict:
""" """
格式化回调数据 格式化回调数据
:param task: :param task:
:param result: :param result:
:return dict: :return dict:
......
class TaskType:
"""
任务类型
"""
DOUDIAN_SHOP_LOGIN = 1
DOUDIAN_UPLOAD_IMAGE_AND_VIDEO = 2
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment