我在目录中有多个文件夹(D:/ zptest)。每个文件夹都有许多文件。我正在尝试将所有这些文件压缩到该文件夹中,并使用" foldername.zip"将文件保存在同一文件夹中。我已为此编写了一个脚本,但不幸的是它抛出了以下错误
PermissionError: [Errno 13] Permission denied:
有些人可以帮助我吗?
我正在使用以下代码
#!/usr/bin/env python
import os, zipfile
from pathlib import Path
loc=r'D:\zipfilelist'
p=Path(r'D:\zptest')
for x in p.iterdir():
x1=str(x)
print("Processing: " + x1)
dirs=os.listdir(x1)
for file in dirs:
file=os.path.join(x1,file)
zip = zipfile.ZipFile(, "a", zipfile.ZIP_DEFLATED)
zip.write(file)
zip.close()
答案 0 :(得分:0)
感谢您的帮助。我能够完成一个有效的代码。
#!/usr/bin/env python
import os, zipfile, datetime, time
from pathlib import Path
p=Path(r'V:\NAR_ARCHIVE')
for x in p.iterdir():
x1=str(x)
print("Processing: " + x1)
#zipfilename = "%s.zip" % (x.stem)
loc=r'Y:\StorageReports\NAR_Zips'
loc=loc + '\\' + x.stem + '.zip'
print (loc)
print(x.stem)
dirs=os.listdir(x1)
#print(dirs)
for file in dirs:
sdate=datetime.datetime(2015,5,30)
edate=datetime.datetime(2015,6,7)
file=os.path.join(x1,file)
crtime=time.ctime(os.path.getmtime(file))
d1=datetime.datetime.strptime(crtime,"%a %b %d %H:%M:%S %Y")
if d1<edate and d1>sdate:
file=os.path.join(x1,file)
print(file)
#logFile = open(r"Y:\StorageReports\NAR_Zips\logfile.log","a")
#print >> logFile,message
zip = zipfile.ZipFile(loc, "a", zipfile.ZIP_DEFLATED)
zip.write(file)
zip.close()