python自动删除本地文件

import os
import datetime
import logging
import timeloop
from timeloop import Timeloop
from datetime import timedelta

'''
autor lyb
qq:937091538
'''
'''
定时任务 1. while true   2.timeloop(本次采用)  3.thread  4.schedule
1.实现自动删除本地文件夹及文件--根据文件夹(20240423)进行匹配删除
2.实现根据硬盘的存储空间大小进行自动删除文件夹及文件--待完成
3.实现多个盘符之间轮询切换--待完成
4.实现备份功能--待完成
5.
'''
#  设置日志
logger = logging.getLogger(__name__)
logger.setLevel(level=logging.INFO)
handler = logging.FileHandler("log.txt")
handler.setLevel(logging.INFO)
formatter = logging.Formatter("%(asctime)s - %(name)s - %(levelname)s - %(message)s ")
handler.setFormatter(formatter)
logger.addHandler(handler)
tl = Timeloop()

# 删除匹配成功的文件
def deleteFile(fileUrl):
    ls = os.listdir(fileUrl)
    for ll in ls:
        j_path = os.path.join(fileUrl, ll)  # 拼接路径
        if os.path.isdir(j_path):  # 判断是不是文件
            deleteFile(j_path)  # 递归
        else:
            if getFileTime() in j_path:
                print(f'此文件夹包含{getFileTime()}-{j_path}')  # 进行对文件进行删除
                logger.info(f'此文件夹包含{getFileTime()}-{j_path}')
                os.remove(j_path)
                print(f'删除文件成功,文件名为:{ll}')
                logger.info(f'删除文件成功,文件名为:{ll}')
                os.rmdir(fileUrl)
                print(f'删除文件夹:{getFileTime()}')
                logger.info(f'删除文件夹:{getFileTime()}')


def getFileTime():
    today = datetime.date.today()
    y_day = today - datetime.timedelta(days=180)  # 获取180天前日期
    # print(f"获取今日文件日期:{str(today).replace('-', '')}")
    # print(f"获取要删除文件日期:{str(y_day).replace('-', '')}")
    return str(y_day).replace('-', '')


def getCloudSize():  # 获取硬盘容量 当容量小于1GB进行删除覆盖最早文件
    print(0)


@tl.job(interval=timedelta(seconds=36000))  # 每十个小时执行一次
def job_j():
    logger.info("-----------开始----------------")
    logger.info(f'定时任务开始执行')
    deleteFile("D:\\hc\\video")
    logger.info("-----------结束----------------")


if __name__ == '__main__':
    tl.start(job_j)
    

#  getFileTime("D:\\hc\\video\\20240327")

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
以下是一些常见的Python自动化任务案例: 1. 批量处理文件:使用Python可以编写脚本来批量处理文件,比如重命名、复制、移动、删除等操作。你可以使用`os`模块来处理文件和目录。 2. 数据清洗和转换:Python的数据处理库(如Pandas)可以帮助你对大量数据进行清洗和转换。你可以使用Pandas来读取和写入不同格式的数据文件,进行数据清洗、重组、筛选等操作。 3. 自动发送电子邮件:使用Python的smtplib和email库,你可以编写脚本来自动发送电子邮件。这在需要定期发送报告、通知或批量发送邮件的场景中非常有用。 4. 网络爬虫:使用Python的爬虫库(如BeautifulSoup和Scrapy),你可以编写脚本来自动抓取网页内容、提取信息并保存到本地或数据库中。这对于网页数据采集、监测和分析非常有用。 5. 自动化测试:Python的测试框架(如unittest和pytest)可以用于编写自动化测试脚本。你可以使用这些框架来执行单元测试、集成测试和端到端测试等,以确保代码的质量和稳定性。 6. 数据报告生成:使用Python的数据可视化库(如Matplotlib和Seaborn),你可以生成各种图表和报告来展示数据分析结果。这对于生成漂亮和有洞察力的数据报告非常有用。 这只是一小部分Python自动化任务案例,Python的应用领域非常广泛,可以根据具体需求进行定制开发。无论是简单的任务还是复杂的工作流程,Python都可以发挥很大的作用。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值