run_xigua_follow_scheduling.py 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  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 xigua.xigua_follow.xigua_follow_scheduling import ScheduleXiguaFollow
  10. from common.public import task_fun
  11. # from common.feishu import Feishu
  12. def main(log_type, crawler, task, oss_endpoint, env):
  13. task = task_fun(task)
  14. try:
  15. Common.logger(log_type, crawler).info('开始抓取 西瓜视频 定向榜\n')
  16. ScheduleXiguaFollow.get_follow_videos(log_type=log_type,
  17. crawler=crawler,
  18. task=task,
  19. oss_endpoint=oss_endpoint,
  20. env=env)
  21. Common.del_logs(log_type, crawler)
  22. Common.logger(log_type, crawler).info('抓取任务结束\n')
  23. except Exception as e:
  24. Common.logger(log_type, crawler).info(f"西瓜视频异常,触发报警:{e}\n")
  25. # Feishu.bot(log_type, crawler, f"{e}")
  26. if __name__ == "__main__":
  27. parser = argparse.ArgumentParser() ## 新建参数解释器对象
  28. parser.add_argument('--log_type', default='author') ## 添加参数,注明参数类型
  29. parser.add_argument('--crawler', default='xigua') ## 添加参数
  30. parser.add_argument('--strategy', default='定向抓取') ## 添加参数
  31. parser.add_argument('--task') ## 添加参数
  32. parser.add_argument('--oss_endpoint', default='outer') ## 添加参数
  33. parser.add_argument('--env', default='dev') ## 添加参数
  34. # parser.add_argument('--machine') ## 添加参数
  35. args = parser.parse_args() ### 参数赋值,也可以通过终端赋值
  36. task = {
  37. 'task_dict': {'task_id': '17', 'task_name': '西瓜测试4.21', 'source': 'xigua', 'start_time': '1682010720000',
  38. 'interval': '24', 'mode': 'author',
  39. 'rule': {'duration': {'min': 40, 'max': 0}, 'playCnt': {'min': 4000, 'max': 0},
  40. 'period': {'min': 10, 'max': 0}, 'fans': {'min': 0, 'max': 0},
  41. 'videos': {'min': 0, 'max': 0}, 'like': {'min': 0, 'max': 0},
  42. 'videoWidth': {'min': 0, 'max': 0}, 'videoHeight': {'min': 0, 'max': 0}},
  43. 'spider_name': 'run_xiguan_author_scheduling', 'machine': 'aliyun', 'status': '0',
  44. 'create_time': '1682048632396', 'update_time': '1682048632396', 'operator': ''},
  45. 'rule_dict': {'duration': {'min': 40, 'max': 0}, 'playCnt': {'min': 4000, 'max': 0},
  46. 'period': {'min': 10, 'max': 0}, 'fans': {'min': 0, 'max': 0}, 'videos': {'min': 0, 'max': 0},
  47. 'like': {'min': 0, 'max': 0}, 'videoWidth': {'min': 0, 'max': 0},
  48. 'videoHeight': {'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)