python-----自动解压并删除zip文件
如何自动解压并删除zip?
- 如何解压 → 使用内置模块来实现(shutil.unpack_archive)
- 如何删除zip → 使用内置模块os来实现(os.remove)
- 如何监测zip的出现 → 如何判断某文件是zip(s.split('.'[-1]) / 如何让函数每一秒都执行(while True)
以下代码素材自取:链接:https://pan.baidu.com/s/1t6i5W0jATSdze3sPAe4sNg 提取码:0npb
import os
import shutil
import time def scan_file():
for f in os.listdir(): #由于这里是当前路径,所以需要把这个代码文件和你要处理的文件放到同一个文件夹里
if f.endswith('.zip'):
return f def unzip_it(f):
folder_name = f.split('.')[0]
target_path = os.path.join('.',folder_name)
os.makedirs(target_path)
shutil.unpack_archive(f,target_path) def delete(f):
os.remove(f)
time.sleep(2) if __name__ == '__main__':
while True:
zip_file = scan_file()
if zip_file:
unzip_it(zip_file)
delete(zip_file)
time.sleep(3)
以下代码素材自取:链接:https://pan.baidu.com/s/1PM9vl6LWjevuzqBHoglBzw 提取码:j0g4
# 监测 image 文件夹,如果包含的文件大于等于 5 个,则将这些文件压缩到 archive1.zip 文件中,并删除这些文件。当再次监测到文件多于 5 个的时候,生成 archive2.zip 压缩包,以此类推。 # coding:utf-8
from shutil import make_archive
import os
import time
# 指定需要监测的文件夹
image_path = './image'
# 指定压缩包存放的文件夹
output_path = './output'
# 记录生成了多少个压缩包
zip_count = 0
# 利用while True使程序持续运行
while True:
files = os.listdir(image_path)
# files变量中存储了路径下所有文件的文件名,len()函数可以获取list变量包含多少个元素
# files_count即为路径下的文件数
files_count = len(files)
if files_count >= 5:
zip_count = zip_count + 1
# 指定压缩包的名称以及路径
zip_name = os.path.join(output_path, 'archive' + str(zip_count))
# 压缩文件
make_archive(zip_name, 'zip', image_path)
# 删除压缩过的文件
for f in files:
os.remove(os.path.join(image_path, f))
# 休眠1秒,达到每1秒监测一次的效果
time.sleep(1)
python-----自动解压并删除zip文件的更多相关文章
- python项目1:自动解压并删除压缩包
目的:实现压缩包的自动解压及删除. 思路:获取压缩包 > 解压 > 删除压缩包 代码实现:此处代码实现前提为.py文件和压缩包在同一文件夹 # 导入需要的包 import os impor ...
- JAVA解压.Z及.ZIP文件
<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-compress --> <dependency ...
- C#压缩或解压(rar和zip文件)
/// <summary> /// 解压RAR和ZIP文件(需存在Winrar.exe(只要自己电脑上可以解压或压缩文件就存在Winrar.exe)) /// </summary&g ...
- python一次性解压多层嵌套zip压缩包
zip包里的结构不是固定的,有可能只需要解压一次就完成了,有可能解压后里面还存在zip文件,需要继续进行解压缩 写了个简单的递归函数来实现解压非固定结构zip包,若解压后的zip子目录下仍含有zip文 ...
- 在Ubuntu系统中解压rar和zip文件的方法
大家在以前的windows系统中会存有很多rar和zip格式的压缩文件,Ubuntu系统默认情况下对这些文件的支持不是很好,如果直接用"归档管理器"打开会提示错误,因此今天跟大家分 ...
- java解压多目录Zip文件(解决中文乱码问题)--转载
原文地址:http://zhangyongbo.iteye.com/blog/1749439 import java.io.BufferedOutputStream; import java.io.F ...
- Linux中解压、压缩 ZIP文件
解压 unzip -o -d /home/v-gazh myfile.zip # 把myfile.zip文件解压到 /home/v-gazh/ # -o:不提示的情况下覆盖文件: # -d:-d /h ...
- 基于Python——实现解压文件夹中的.zip文件
[背景]当一个文件夹里存好好多.zip文件需要解压时,手动一个个解压再给文件重命名是一件很麻烦的事情,基于此,今天介绍一种使用python实现批量解压文件夹中的压缩文件并给文件重命名的方法—— [代码 ...
- PHP自动解压上传的rar文件
PHP自动解压上传的rar文件 浏览:383 发布日期:2015/07/20 分类:功能实现 关键字: php函数 php扩展 大家都知道php有个zip类可直接操作zip压缩文件,可是用户有时候 ...
随机推荐
- Python之面向对象函数式编程
Python之面向对象函数式编程 函数式编程的根本就是用 def 去模拟数学式的编程逻辑. 类似与 y = 2*x + 1 ,当x = 3 时,函数的结果y就得7. def test(x): retu ...
- 杭电 1009 FatMouse' Trade (贪心)
Problem Description FatMouse prepared M pounds of cat food, ready to trade with the cats guarding th ...
- STM32F407 串口通信实验 第26节 个人笔记
前言 这篇笔记对应正点原子STM32F407探索者 ,教学视频第26节,网址如下: https://ke.qq.com/webcourse/index.html#cid=279403&term ...
- java springMVC 极致验证 非demo版
最近公司项目需要,做了个极致验证,自己在此做下记录. 先上效果图: 它的官网:http://www.geetest.com/ 里面有 身份验证.行为验证, 我这使用的为行为验证. 技术文档:ht ...
- 【BZOJ2527】Meteors(整体二分)
题意: Byteotian Interstellar Union有N个成员国.现在它发现了一颗新的星球,这颗星球的轨道被分为M份(第M份和第1份相邻),第i份上有第Ai个国家的太空站. 这个星球经常会 ...
- Linux下汇编语言学习笔记46 ---
这是17年暑假学习Linux汇编语言的笔记记录,参考书目为清华大学出版社 Jeff Duntemann著 梁晓辉译<汇编语言基于Linux环境>的书,喜欢看原版书的同学可以看<Ass ...
- MySQL JDBC URL参数(转)
MySQL的 JDBC URL格式: jdbc:mysql://[host][,failoverhost...][:port]/[database] » [?propertyName1][=prope ...
- laravel event
事件监听 方法一: web.php Event::listen('eloquent.created: App\post',function(){ dump('A post was created'); ...
- 【c++】【转】如何只在heap上创建对象,如何只在stack上建立对象?
http://www.cnblogs.com/chio/archive/2007/10/23/934335.html http://blog.csdn.net/szchtx/article/detai ...
- IntelliJ IDEA在行尾增加分号
IntelliJ IDEA在行尾增加分号 Ctrl+Shift+Enter - 本身的含义是自动完成,如果需要的话,会在行尾添加分号: