123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122 |
- # -*- coding: utf-8 -*-
- # @Author: wangkun
- # @Time: 2022/4/18
- import os
- import random
- import sys
- import time
- sys.path.append(os.getcwd())
- from main.download_sendtime import DownloadSendtime
- from main.download_up import DownloadUp
- from main.common import Common
- from main.download_play import DownloadPlay
- from main.get_feeds import get_feeds
- class Main:
- @classmethod
- def download_play_job(cls):
- """
- 播放量脚本任务
- """
- while True:
- # 指定时间结束抓取视频
- if Common.now.hour == 0:
- Common.crawler_log().info("结束抓取播放量视频\n")
- time.sleep(3)
- break
- else:
- # 获取视频信息,并下载
- get_feeds()
- DownloadPlay.download_play_video("prod")
- # 请求随机间隔时间
- time.sleep(random.randint(31, 40))
- # 删除 charles 缓存文件
- Common.del_charles_files()
- # 删除多余日志
- Common.del_logs()
- # 统计累计下载数量
- Common.kanyikan_download_count()
- @classmethod
- def download_up_job(cls):
- """
- 上升榜脚本任务
- """
- while True:
- # 指定时间结束抓取视频
- if Common.now.hour > 19:
- Common.crawler_log().info("结束抓取上升榜视频\n")
- time.sleep(3)
- break
- else:
- # 获取视频信息,并下载
- get_feeds()
- DownloadUp.download_up_video("prod")
- # 请求随机间隔时间
- time.sleep(random.randint(31, 40))
- # 删除 charles 缓存文件
- Common.del_charles_files()
- # 删除多余日志
- Common.del_logs()
- # 统计累计下载数量
- Common.kanyikan_download_count()
- @classmethod
- def download_sendtime_job(cls):
- """
- 发布时间榜脚本任务
- """
- while True:
- # 指定时间结束抓取视频
- if Common.now.hour > 9:
- Common.crawler_log().info("结束抓取3天榜单视频\n")
- time.sleep(3)
- break
- else:
- # 获取视频信息,并下载
- get_feeds()
- DownloadSendtime.download_sendtime_video("prod")
- # 请求随机间隔时间
- time.sleep(random.randint(31, 40))
- # 删除 charles 缓存文件
- Common.del_charles_files()
- # 删除多余日志
- Common.del_logs()
- # 统计累计下载数量
- Common.kanyikan_download_count()
- @classmethod
- def main(cls):
- """
- - 1.凌晨0点-10点 3日内播放大于2万 爬取
- - 2.早上10点-20点 内容上升榜 爬取
- - 3.晚上20点-24点 15万播放爬取
- """
- while True:
- while True:
- if 9 >= Common.now.hour >= 0:
- Common.crawler_log().info("开始抓取3天榜单视频\n")
- time.sleep(1)
- cls.download_sendtime_job()
- elif 19 >= Common.now.hour >= 10:
- Common.crawler_log().info("开始抓取上升榜视频\n")
- time.sleep(1)
- cls.download_up_job()
- elif 24 >= Common.now.hour >= 20:
- Common.crawler_log().info("开始抓取播放量视频\n")
- time.sleep(1)
- cls.download_play_job()
- else:
- Common.crawler_log().info("结束今天抓取及上传任务\n")
- time.sleep(60)
- break
- if __name__ == "__main__":
- main = Main()
- main.main()
|