run_xiaoniangao_hour_scheduling.py 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. # -*- coding: utf-8 -*-
  2. # @Author: wangkun
  3. # @Time: 2023/3/15
  4. import argparse
  5. import datetime
  6. import os
  7. import sys
  8. sys.path.append(os.getcwd())
  9. from common.common import Common
  10. from common.public import task_fun
  11. from xiaoniangao.xiaoniangao_hour.xiaoniangao_hour_scheduling import XiaoniangaoHourScheduling
  12. def main(log_type, crawler, task, oss_endpoint, env):
  13. task_dict = task_fun(task)['task_dict']
  14. rule_dict = task_fun(task)['rule_dict']
  15. Common.logger(log_type, crawler).info(f"调度任务:\n{task_dict}")
  16. Common.logger(log_type, crawler).info(f"抓取规则:\n{rule_dict}")
  17. # 获取符合规则的视频,写入小时级数据_feeds
  18. XiaoniangaoHourScheduling.get_videoList(log_type, crawler, rule_dict, env)
  19. now = datetime.datetime.now()
  20. if now.hour == 10 and 0 <= now.minute <= 10:
  21. Common.logger(log_type, crawler).info("开始更新/下载上升榜")
  22. XiaoniangaoHourScheduling.update_videoList(log_type=log_type,
  23. crawler=crawler,
  24. rule_dict=rule_dict,
  25. strategy="小时榜爬虫策略",
  26. oss_endpoint=oss_endpoint,
  27. env=env)
  28. elif now.hour == 15 and now.minute <= 10:
  29. Common.logger(log_type, crawler).info("开始更新/下载上升榜")
  30. XiaoniangaoHourScheduling.update_videoList(log_type=log_type,
  31. crawler=crawler,
  32. rule_dict=rule_dict,
  33. strategy="小时榜爬虫策略",
  34. oss_endpoint=oss_endpoint,
  35. env=env)
  36. elif now.hour == 20 and now.minute <= 10:
  37. Common.logger(log_type, crawler).info("开始更新/下载上升榜")
  38. XiaoniangaoHourScheduling.update_videoList(log_type=log_type,
  39. crawler=crawler,
  40. rule_dict=rule_dict,
  41. strategy="小时榜爬虫策略",
  42. oss_endpoint=oss_endpoint,
  43. env=env)
  44. Common.del_logs(log_type, crawler)
  45. if __name__ == "__main__":
  46. parser = argparse.ArgumentParser() ## 新建参数解释器对象
  47. parser.add_argument('--log_type', type=str) ## 添加参数,注明参数类型
  48. parser.add_argument('--crawler') ## 添加参数
  49. parser.add_argument('--task') ## 添加参数
  50. parser.add_argument('--oss_endpoint') ## 添加参数
  51. parser.add_argument('--env') ## 添加参数
  52. args = parser.parse_args() ### 参数赋值,也可以通过终端赋值
  53. main(log_type=args.log_type,
  54. crawler=args.crawler,
  55. task=args.task,
  56. oss_endpoint=args.oss_endpoint,
  57. env=args.env)