PyPDF2读取PDF文件内容保存到本地TXT

利用PyPDF2读取PDF文件内容保存到本地TXT

from PyPDF2.pdf import PdfFileReader
import pandas as pd

def Pdf_to_txt(pdf):

for i in range(0, pdf.getNumPages()):
    title = []
    lin1, lin2, lin3, lin4, lin5, lin6, lin7, lin8 = [], [], [], [], [], [], [], []
    extractedText = pdf.getPage(i).extractText()
    text = extractedText.split('\n')
    num = 0
    for lin in text:
        if num == 0:
            title.append(lin)
        elif num == 1:
            lin1.append(lin)
        elif num == 2:
            lin2.append(lin)
        elif num == 3:
            lin3.append(lin)
        elif num == 4:
            lin4.append(lin)
        elif num == 5:
            lin5.append(lin)
        elif num == 6:
            lin6.append(lin)
        elif num == 7:
            lin7.append(lin)
        elif num == 8:
            lin8.append(lin)
            num = 0
        num += 1
    Lin_num = len(lin8)
    data = {'Lin1': lin1[:Lin_num], 'Lin2': lin2[:Lin_num], 'Lin3': lin3[:Lin_num], 'Lin4': lin4[:Lin_num], 'Lin5': lin5[:Lin_num], 'Lin6': lin6[:Lin_num], 'Lin7': lin7[:Lin_num], 'Lin8': lin8[:Lin_num]}
    df = pd.DataFrame(data, columns=['Lin1', 'Lin2', 'Lin3', 'Lin4', 'Lin5', 'Lin6', 'Lin7', 'Lin8'])
    file_name = title[0] + '_page' + str((i + 1))
    df.to_csv('tool/pdf解析/%s.txt' % file_name, index=False, sep='\t')

if name == ‘main‘:
filename = ‘E:/SVN/采集框架V2/analyse_code/政策/pdf/con026465.pdf’
pdf = PdfFileReader(open(filename, “rb”))
Pdf_to_txt(pdf)

猜你喜欢

转载自blog.csdn.net/luzaofa/article/details/80526608