如何在Python中阅读多个PDF

当我尝试在Python中的文件夹中读取和打印多个PDF的内容时,我一直收到此错误 . 我无法解决它 . 请帮我 .

pdfFileObj = open(fp,'rb')IOError:[Errno 2]没有这样的文件或目录:'Mr praveen.pdf'

这是我的代码

import PyPDF2
import os
path = r'/root/Desktop/temp_dir'     #path of folder containing several PDFs
for fp in os.listdir(path):
  pdfFileObj = open(fp, 'rb')

  pdfReader = PyPDF2.PdfFileReader(pdfFileObj)
  print(pdfReader.numPages)

  for i in range(0,pdfReader.getNumPages()):
  ` data+= pdfReader.getPage(i).extractText()

  print data                  #(pageObj.extractText())
  pdfFileObj.close()

谢谢

回答(1)

2 years ago

问题是从 os.listdir(path) 返回的名称只是您使用目录名称 os.path.join(path, fp) 的文件名:

path = r'/root/Desktop/temp_dir'     #path of folder containing several PDFs
for fp in os.listdir(path):
    pdfFileObj = open(os.path.join(path, fp), 'rb')

要么在循环之前做 os.chdir(path) ,要么在程序的其他地方引起问题,所以在大多数情况下处理完整路径名更好 .