path1 = "C:/Users/Gebruiker/PycharmProjects/pdf_processor/Files/pdf_files/"
pdffname = "testfile2.pdf"
file_info = subprocess.Popen(['pdfinfo', '-meta',
os.path.join(path1, pdffname)])
所以我需要知道这个pdf有多少页。如果我调用cmd中的函数,它会正常工作。但是如何从-meta命令中提取数据呢?该函数不返回错误。file_info变量的类型为。
据推测,-meta命令中的数据是xml格式的。但是没有在任何地方提取xml文件的选项。它甚至不打印任何内容:/。完全迷失在这里。
编辑:
我实际上是这样做的:
pdf_info = subprocess.Popen(['pdfinfo', '-meta',
os.path.join(path1, pdfname)], stdout=subprocess.PIPE)
output = pdf_info.stdout.read()
with open(os.path.join(path3, 'pdf_info.xml'), 'wb') as file:
file.write(output)
如果你听说过PyPdf,你可能有一个可靠的选择。
import pyPdf
reader = pyPdf.PdfFileReader(open("foo.pdf"))
print reader.getNumPages()
这应该做你正在寻找的