我想使用命令pdftotext将我的.pdf文件从特定目录转换为.txt格式...但我想使用python脚本执行此操作... 我的脚本包含:
import glob
import os
fullPath = os.path.abspath("/home/eth1/Downloads")
for fileName in glob.glob(os.path.join(fullPath,'*.pdf')):
fullFileName = os.path.join(fullPath, fileName)
os.popen('pdftotext fullFileName')
但是我收到以下错误:
Error: Couldn't open file 'fullFileName': No such file or directory.
答案 0 :(得分:3)
您将fullFileName
字面上传递给os.popen
。你应该做这样的事情(假设fullFileName
不必转义):
os.popen('pdftotext %s' % fullFileName)
另请注意,os.popen
被视为已弃用,最好使用subprocess
模块:
import subprocess
retcode = subprocess.call(["/usr/bin/pdftotext", fullFileName])
它也更加安全,因为它正确处理fullFileName
中的空格和特殊字符。
答案 1 :(得分:1)
将最后一行更改为
os.open('pdftotext {0}'.format(fullFileName))
这样就会传递fullFileName
的值,而不是名称。