【发布时间】:2019-09-10 02:13:15
【问题描述】:
我想遍历目录中所有文件夹中的 pdf 文件,对这些文件进行操作(提取文本,保存到 .txt),然后将所有 txt 保存到具有相同名称但在不同目录中的一组不同文件夹中.该功能按预期执行,但不适用于子文件夹。我知道有 os.walk,但我不知道如何在这里使用它。如果我拥有所有没有子文件夹的文件,则该功能有效;它写入所需的目录。但我需要遍历文件夹,保存到另一个目录中的那些文件夹。
在一个目录中找到文件,操作,保存到另一个。尝试 os.walk 但未成功合并文件夹结构。
文件夹结构基本上是path/folder1...folderN
有 30K+ 文件,所以想保留到文件夹系统。
def convertall(pdfDir, txtDir):
if pdfDir == "": pdfDir = os.walk(path) + "\\"
for pdf in os.listdir(pdfDir): --- tried os.walk here too;
fileExtension = pdf.split(".")[-1]
if fileExtension == "pdf":
pdfFilename = pdfDir + pdf
text = convert(pdfFilename)
textFilename = txtDir + pdf + ".txt"
textFile = open(textFilename, "w")
textFile.write(text)
pdfDir = pdfpath
txtDir = txtpath
convertall(pdfDir)
打算为各种操作做这个,所以希望学习一些通用的解决方案。
【问题讨论】:
-
您能展示一下您的
os.walk尝试吗?如果你想递归遍历一堆文件夹,那绝对是要走的路。