从名单中获取空白内容()

Getting blank content from namelist()

我正在尝试编写一个脚本,允许我搜索最近下载的文件(将是 docx),压缩该文件,然后在 [=13= 中搜索文档的特定部分].我被困在试图压缩文件的这一部分。当我 运行 namelist() 时,我得到的是空白内容,而不是我想要的文件的内容。

import glob 
import os

list_of_files = glob.iglob('C:\Users\username\Downloads\*') 
latest_file = max(list_of_files, key=os.path.getctime)

import re
import zipfile
import xml.dom.minidom

os.chdir('C:\Users\username\Downloads\')

zf = zipfile.ZipFile('latest_file','w')

print(zf.namelist())

尝试:

with ZipFile('out.zip','w') as zip: 
    zip.write(latest_file) 

您的问题似乎是您在 write mode 中打开 zip 文件是这样的:

zf = zipfile.ZipFile('latest_file','w')

这样做会自动用空白 zip 文件覆盖现有文件,因此 zf.namelist() 是空的。请注意,这样做可能会永久删除您的数据,因此您应该在继续之前检查 "manually" 是否存在您的数据。

您想要的只是将 'w' 替换为 'r' 以在读取模式下打开它。