1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- # -*- coding: utf-8 -*-
- # @Author: wangkun
- # @Time: 2023/3/15
- import argparse
- import datetime
- import os
- import sys
- import time
- sys.path.append(os.getcwd())
- from common.common import Common
- from xiaoniangao.xiaoniangao_hour.xiaoniangao_hour import XiaoniangaoHour
- def main(log_type, crawler, strategy, oss_endpoint, env, machine):
- while True:
- # 今天的日期:年-月-日
- today = datetime.datetime.now().strftime("%Y/%m/%d")
- # 昨天
- yesterday = (datetime.date.today() + datetime.timedelta(days=-1)).strftime("%Y/%m/%d")
- # 前天
- before_yesterday = (datetime.date.today() + datetime.timedelta(days=-2)).strftime("%Y/%m/%d")
- Common.logger(log_type, crawler).info("检查今日上升榜日期是否存在")
- XiaoniangaoHour.check_data(log_type, crawler, today)
- while True:
- # 获取符合规则的视频,写入小时级数据_feeds
- XiaoniangaoHour.get_videoList(log_type, crawler, env, machine)
- now = datetime.datetime.now()
- if now.hour == 10 and 0 <= now.minute <= 10:
- Common.logger(log_type, crawler).info("开始更新上升榜")
- XiaoniangaoHour.update_videoList(log_type, crawler, today, yesterday, before_yesterday)
- Common.logger(log_type, crawler).info("开始下载上升榜")
- XiaoniangaoHour.download_publish(log_type, crawler, strategy, oss_endpoint, env, machine)
- elif now.hour == 15 and now.minute <= 10:
- Common.logger(log_type, crawler).info("开始更新上升榜")
- XiaoniangaoHour.update_videoList(log_type, crawler, today, yesterday, before_yesterday)
- Common.logger(log_type, crawler).info("开始下载上升榜")
- XiaoniangaoHour.download_publish(log_type, crawler, strategy, oss_endpoint, env, machine)
- elif now.hour == 20 and now.minute <= 10:
- Common.logger(log_type, crawler).info("开始更新上升榜")
- XiaoniangaoHour.update_videoList(log_type, crawler, today, yesterday, before_yesterday)
- Common.logger(log_type, crawler).info("开始下载上升榜")
- XiaoniangaoHour.download_publish(log_type, crawler, strategy, oss_endpoint, env, machine)
- elif 1 >= now.hour >= 0:
- time.sleep(3600)
- break
- if __name__ == "__main__":
- parser = argparse.ArgumentParser() ## 新建参数解释器对象
- parser.add_argument('--log_type', type=str) ## 添加参数,注明参数类型
- parser.add_argument('--crawler') ## 添加参数
- parser.add_argument('--strategy') ## 添加参数
- parser.add_argument('--oss_endpoint') ## 添加参数
- parser.add_argument('--env') ## 添加参数
- parser.add_argument('--machine') ## 添加参数
- args = parser.parse_args() ### 参数赋值,也可以通过终端赋值
- main(log_type=args.log_type,
- crawler=args.crawler,
- strategy=args.strategy,
- oss_endpoint=args.oss_endpoint,
- env=args.env,
- machine=args.machine)
|