最近公司需要做一个解析日志文件message的工具,所以就开始学习python。首先遇到的问题便是对压缩包的解压及文件的寻找(注:本文纯属个人笔记,不喜勿喷。本人也是小白一枚,有志同道合的小伙伴可以一起学习。)
第一部分先上几种压缩包的解压方法:
上压缩包方法之前先来点python对文件夹路径操作的基础:
#os.path的几种用法
#filename为绝对路径(例如:D:\Example\Demo.zip)
os.path.split(filename)[0] #文件所在的文件夹路径 即:D:\Example\
os.path.splitext(filename)[0] #无扩展名的绝对路径 即:D:\Example\Demo
os.path.splitext(filename)[1] #文件扩展名 即: zip
os.path.basename(os.path.splitext(filename)[0]) #文件名 即:Demo
以上便是在解压缩文件时常用到的几种path方法
#解压tgz压缩文件
def un_tgz(filename):
tar=tarfile.open(filename)
#判断同名文件夹是否存在,若不存在则创建同名文件夹
tar.close()
#解压rar压缩包
def un_rar(filename):
rar=rarfile.RarFile(filename)
#判断同名文件夹是否存在,若不存在则创建同名文件夹
rar.extractall(os.path.splitext(filename)[0])
#解压缩zip压缩包
def un_zip(filename):
zip_file=zipfile.ZipFile(filename)
#判断同名文件夹是否存在,若不存在则创建同名文件夹
zip_file.close()
注:需要在python脚本前引入几个包:
import os
import tarfile
from unrar import rarfile
import zipfile