run_dy_recommend_scheduling.py 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. # -*- coding: utf-8 -*-
  2. # @Author: lierqiang
  3. # @Time: 2023/4/21
  4. import argparse
  5. import os
  6. import sys
  7. sys.path.append(os.getcwd())
  8. from common.common import Common
  9. from douyin.douyin_recommend.dy_recommend_scheduling import DyRecommendScheduling
  10. from common.public import task_fun
  11. def main(log_type, crawler, task, oss_endpoint, env):
  12. task = task_fun(task)
  13. try:
  14. Common.logger(log_type, crawler).info(f'开始抓取 {crawler}视频 定向榜\n')
  15. DyRecommendScheduling.get_recommend_videos(log_type=log_type,
  16. crawler=crawler,
  17. task=task,
  18. oss_endpoint=oss_endpoint,
  19. env=env)
  20. Common.del_logs(log_type, crawler)
  21. Common.logger(log_type, crawler).info('抓取任务结束\n')
  22. except Exception as e:
  23. Common.logger(log_type, crawler).info(f"{crawler}视频异常,触发报警:{e}\n")
  24. # Feishu.bot(log_type, crawler, f"{e}")
  25. if __name__ == "__main__":
  26. parser = argparse.ArgumentParser() ## 新建参数解释器对象
  27. parser.add_argument('--log_type', default='recommend') ## 添加参数,注明参数类型
  28. parser.add_argument('--crawler', default='douyin') ## 添加参数
  29. parser.add_argument('--strategy', default='推荐') ## 添加参数
  30. parser.add_argument('--task') ## 添加参数
  31. parser.add_argument('--oss_endpoint', default='outer') ## 添加参数
  32. parser.add_argument('--env', default='dev') ## 添加参数
  33. # parser.add_argument('--machine') ## 添加参数
  34. args = parser.parse_args() ### 参数赋值,也可以通过终端赋值
  35. task = {
  36. 'task_dict': {'task_id': '17', 'task_name': '西瓜测试4.21', 'source': 'douyin', 'start_time': '1682010720000',
  37. 'interval': '24', 'mode': 'author',
  38. 'rule': {'duration': {'min': 40, 'max': 0}, 'play_cnt': {'min': 4000, 'max': 0},
  39. 'period': {'min': 10, 'max': 0}, 'fans_cnt': {'min': 0, 'max': 0},
  40. 'videos_cnt': {'min': 0, 'max': 0}, 'like_cnt': {'min': 0, 'max': 0},
  41. 'width': {'min': 0, 'max': 0}, 'height': {'min': 0, 'max': 0}},
  42. 'spider_name': 'run_dy_author_scheduling', 'machine': 'aliyun', 'status': '0',
  43. 'create_time': '1682048632396', 'update_time': '1682048632396', 'operator': ''},
  44. 'rule_dict': {'duration': {'min': 0, 'max': 0}, 'play_cnt': {'min': 0, 'max': 0},
  45. 'period': {'min': 0, 'max': 0}, 'fans_cnt': {'min': 0, 'max': 0},
  46. 'videos_cnt': {'min': 0, 'max': 0},
  47. 'like_cnt': {'min': 0, 'max': 0}, 'width': {'min': 0, 'max': 0},
  48. 'height': {'min': 0, 'max': 0}}}
  49. main(log_type=args.log_type,
  50. crawler=args.crawler,
  51. task=task,
  52. oss_endpoint=args.oss_endpoint,
  53. env=args.env)