Python 脚本到 运行 对文件夹中所有文件的命令

Python Script to run a command over all files in a folder

为了将 pdf 转换为文本,我使用以下命令:

pdf2txt.py -o text.txt example.pdf # It will convert example.pdf to text.txt

但是我有1000多个pdf文件,我需要先转换成文本文件,然后再进行分析。

有没有办法让我可以使用此命令遍历 pdf 文件并转换所有文件?

我建议你有一个 shell 脚本:

for f (*.pdf) {pdf2txt.py -o $f $f.txt}

然后使用 python 读取所有 .txt 个文件进行分析。

仅使用python转换:

from subprocess import call
import glob

for pdf_file in glob.glob('*.pdf'): 
    call(["pdf2txt.py", "-o", pdf_file, pdf_file[:-3]+"txt"])

python 代码在我的 win1o 上出错 OS(OS错误:[WinError 193] %1 不是有效的 Win32 应用程序),for 循环应该是:

for pdf_file in glob.glob('*.pdf'):
    call(['python.exe','pdf2txt.py','-o',pdf_file[:-3]+'txt',pdf_file])

注意,文件i/o的参数是相反的,如果你保持相同的顺序,你的文件会被空文件覆盖...

还是感谢Gurupad Hegde,告诉我隐藏文件的方法,很有帮助!