循环遍历目录中的文件以提取PDF中的数据并将其放置在Python的CSV中的问题

2024-10-01 07:26:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图使用csv、os和PyPDF2包编写代码,从目录中的大量pdf文件中提取文本,然后将数据放入csv中。下面的代码说明了我的工作(它运行但不提供输出):

import PyPDF2

import csv

import os

for filename in os.listdir(os.getcwd()):
     if filename endswith('.pdf'):
     pdfFileobject = open(filename, 'rb')
     pdfUnderstander = PyPDF2.PdfFileReader(pdfFileObject)
     numberpages = pdfUnderstander.getNumPages()
     increment = 0
     text = ""
          while increment < numberpages:
          pdfPage = pdfUnderstander.getPage(increment)
          increment += 1
          text += pdfPage.extractText()
          print(text)

我还没有完全得到的一部分,因为上面的部分工作失败,但想知道如何存储以及一些建议。你知道吗


Tags: 文件csv代码text文本import目录pdf
1条回答
网友
1楼 · 发布于 2024-10-01 07:26:26

我猜你在提取文件名时出错了。你知道吗

您正在犯的错误:-变量名。你知道吗

**pdfFileobject** = open(filename, 'rb')
pdfUnderstander = PyPDF2.PdfFileReader(**pdfFileObject**)

请尝试以下代码:

path = r'Dir contains PDFs'
for filename in os.listdir(path):
    if filename.split(".")[-1] == 'pdf':
        print(filename)
        pdfFileObject = open(os.path.join(path, filename), 'rb')
        pdfUnderstander = PyPDF2.PdfFileReader(pdfFileObject)
        numberpages = pdfUnderstander.getNumPages()
        increment = 0
        text = ""
        while increment < numberpages:
            pdfPage = pdfUnderstander.getPage(increment)
            increment += 1
            text += pdfPage.extractText()
        print(text)

相关问题 更多 >