# -*- coding: utf-8 -*- # @Time : 2023/1/5 10:00 # @Author : XuJiakai # @File : delete_mongo_history # @Software: PyCharm import datetime from project_const import MONGODB_NAME from sdk.WinhcAllClient import get_all_client all_client = get_all_client() del_col = all_client.get_mongo_collection(MONGODB_NAME + '_del') def _get_remove_ds(start_ds): start_date = datetime.datetime.strptime(start_ds, "%Y%m%d") last_week = datetime.datetime.today() + datetime.timedelta(days=-7) result = [] while start_date < last_week: date_str = start_date.strftime("%Y%m%d") result.append(date_str) start_date += datetime.timedelta(days=1) pass return result pass def remove_mongo_history(): res = del_col.find_one() del_info = None if res: start_ds = res['_id'].split('_')[0] result_date = _get_remove_ds(start_ds) del_list = [] for i in result_date: print(f"delete prefix: {i} ...") res = del_col.delete_many({"_id": {"$regex": "^" + i}}) str = f"deleted prefix: {i} , deleted_count: {res.deleted_count}" del_list.append(str) print(str) pass del_info = '\n'.join(del_list) return del_info pass if __name__ == '__main__': remove_mongo_history() pass