from common import Material from extract_data.douyin.douyin_author import douyinAuthor from extract_data.kuaishou.kuaishou_author import kuaishouAuthor from extract_data.zhannei.zhannei_author import ZhanNeiAuthor import schedule import time import concurrent.futures def douyin_start(user_data): print(f"执行抖音数据抓取{user_data}") douyinAuthor.get_videoList(user_data) def kuaishou_start(user_data): print(f"执行快手数据抓取{user_data}") kuaishouAuthor.get_kuaishou_videoList(user_data) def zhannei_start(user_data): print(f"执行站内数据抓取{user_data}") ZhanNeiAuthor.get_zhannei_videoList(user_data) # data = Material.get_all_gs_user("douyin") # douyin_start(data[0]) # 定义定时任务 def zhannei_task(): data = Material.get_all_gs_user("zhannei") # 创建一个线程池 valid_data = [user_data for user_data in data if user_data['sheet'] is None] with concurrent.futures.ThreadPoolExecutor() as executor: futures = [executor.submit(zhannei_start, user_data) for user_data in valid_data] # 等待所有任务执行完成 for future in concurrent.futures.as_completed(futures): # 获取每个任务的执行结果 result = future.result() print("处理结果:", result) print("站内数据抓取定时任务执行完成") # 定义定时任务 def douyin_task(): data = Material.get_all_gs_user("douyin") # 创建一个线程池 valid_data = [user_data for user_data in data if user_data['sheet'] is not None] with concurrent.futures.ThreadPoolExecutor() as executor: futures = [executor.submit(douyin_start, user_data) for user_data in valid_data] # 等待所有任务执行完成 for future in concurrent.futures.as_completed(futures): # 获取每个任务的执行结果 result = future.result() print("处理结果:", result) print("抖音数据抓取定时任务执行完成") # 定义定时任务 def kuanshou_task(): data = Material.get_all_gs_user("kuaishou") # 创建一个线程池 valid_data = [user_data for user_data in data if user_data['sheet'] is not None] with concurrent.futures.ThreadPoolExecutor() as executor: futures = [executor.submit(kuaishou_start, user_data) for user_data in valid_data] # 等待所有任务执行完成 for future in concurrent.futures.as_completed(futures): # 获取每个任务的执行结果 result = future.result() print("处理结果:", result) print("快手数据抓取定时任务执行完成.") schedule.every().day.at("19:20").do(kuanshou_task) schedule.every().day.at("19:30").do(douyin_task) schedule.every().day.at("18:00").do(zhannei_task) # 持续运行,直到手动终止 while True: schedule.run_pending() time.sleep(1)