123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- from common import Common, AliyunLogger
- from common.sql_help import sqlCollect
- class SPHLS:
- @classmethod
- def get_sphls_data(cls, task_mark, url, number, mark, channel_id, name):
- data_list = sqlCollect.sph_data_info_list(url)
- list = []
- if data_list:
- for data in data_list:
- video_id = data[0]
- status = sqlCollect.is_used(task_mark,video_id, mark, "视频号历史")
- old_title = data[1]
- share_cnt = int(data[2])
- like_cnt = int(data[3])
- oss_url = data[4]
- oss_cover = data[5]
- duration = int(float(data[6]))
- Common.logger("sph-ls").info(
- f"扫描:{task_mark},用户主页id:{url},视频id{video_id} ,分享:{share_cnt},点赞:{like_cnt},时长:{duration}")
- log_data = f"user:{url},,video_id:{video_id},,video_url:{oss_url},,original_title:{old_title},,share_count:{share_cnt},,like_count:{like_cnt},,duration:{duration}"
- AliyunLogger.logging(channel_id, name, url, video_id, "扫描到一条视频", "2001", log_data)
- if status:
- AliyunLogger.logging(channel_id, name, url, video_id, "该视频已改造过", "2002", log_data)
- continue
- if share_cnt < 300:
- AliyunLogger.logging(channel_id, name, url, video_id, "不符合规则:分享小于300", "2003", log_data)
- Common.logger("sph-ls").info(
- f"任务:{task_mark},用户主页id:{url},视频id{video_id} ,分享:{share_cnt},点赞:{like_cnt} ,时长:{duration} ")
- continue
- if share_cnt < like_cnt:
- AliyunLogger.logging(channel_id, name, url, video_id, "不符合规则:分享小于点赞", "2003", log_data)
- Common.logger("sph-ls").info(
- f"任务:{task_mark},用户主页id:{url},视频id{video_id} ,分享:{share_cnt},点赞:{like_cnt} ,时长:{duration} ")
- continue
- if duration < 30 or duration > 720:
- AliyunLogger.logging(channel_id, name, url, video_id, "不符合规则:时长不符合规则大于720秒/小于30秒", "2003",
- log_data)
- Common.logger("sph-ls").info(
- f"任务:{task_mark},用户主页id:{url},视频id{video_id} ,分享:{share_cnt},点赞:{like_cnt} ,时长:{duration} ")
- continue
- all_data = {"video_id": video_id, "cover": oss_cover, "video_url": oss_url, "rule": '',
- "old_title": old_title}
- list.append(all_data)
- AliyunLogger.logging(channel_id, name, url, video_id, "符合规则等待改造", "2004", log_data)
- if len(list) == int(number):
- Common.logger("sph-ls").info(f"获取视频号视频总数:{len(list)}\n")
- return list
- return list
- else:
- Common.logger("sph-ls").info(f"{url}无数据\n")
- return list
- if __name__ == '__main__':
- SPHLS.get_sphls_data(1,2,3,4)
|