python 批量读取文件夹下pdf文件、并重新命名_用Python处理PDF_读写批量合并等

PDF作为可移植文档格式(Portable Document Format),在日常生活中经常接触到,最近处理一些数据更是频繁接触一些需要批量处理pdf文件的需求,因此便想整理一下自己实践的用Python处理PDF格式数据的笔记。本文会保持更新。

PDF处理的高频需求有:读取、写入、格式转换(pdf提取文本写入txt、根据url写入pdf等)

、批处理(多个pdf合并为1个、切分pdf)等等。

查了下相关资料,Python操作PDF的库有(只是应用的话肯定不至于造轮子从二进制数据开始读):pdfminer、pdfminer3k、PyPDF、PyPDF2、pdf2htmlex、pdf2image、pdf2xlsx等。

pdf库

用pdf2合并和切分PDF

比较几个库之后打算先从PyPDF2快速实现一些功能。其官方文档为PyPDF2 Documentation,根据文档,PDF2库包含了 PdfFileReader PdfFileMerger PageObject PdfFileWriter 四个常用的主要的调用类,意思也很明确。

先用pip install PyPDF2安装库。

批量合并pdf

import os

from PyPDF2 import PdfFileReader, PdfFileWriter #导入需要的类(库)

wp='D:/doc_of_pdf/' #work_path

#合并同一个文件夹下的pdf文件

flst=[] #获得pdf文件路径

for root, dirs, files in os.walk(wp):

flst=files

fls

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 使用 Python 读取 PDF入 Excel,可以使用第三方库,例如: 1. PyPDF2:用于读取 PDF 文件内容 2. pandas:用于将 PDF 文件内容存储到 DataFrame 中,并入 Excel 文件 3. openpyxl:用于 Excel 文件 代码示例: ``` import PyPDF2 import pandas as pd # 读取 PDF 文件内容 pdfFileObj = open('sample.pdf', 'rb') pdfReader = PyPDF2.PdfFileReader(pdfFileObj) text = '' for page in range(pdfReader.numPages): text += pdfReader.getPage(page).extractText() pdfFileObj.close() # 将 PDF 文件内容存储到 DataFrame 中 df = pd.DataFrame({'text': [text]}) # 入 Excel 文件 df.to_excel('sample.xlsx', index=False) ``` ### 回答2: Python是一门非常强大的编程语言,它可以用于多种任务,其中包括读取PDF文件并将其入Excel。如果你想实现这个功能,下面的步骤可以帮助你完成这个任务。 步骤一:安装必要的Python库 要读取PDF文件,你需要安装一个名为PyPDF2的Python库。这个库也可以用来编PDF文件。安装这个库的命令是: `pip install PyPDF2` 另外,你还需要安装一个名为openpyxl的Python库,它可以用来编Excel文件。安装这个库的命令是: `pip install openpyxl` 步骤二:使用Python读取PDF文件 使用Python读取PDF文件很容易。只需使用下面的代码: ``` import PyPDF2 pdf_file = open('example.pdf', 'rb') pdf_reader = PyPDF2.PdfFileReader(pdf_file) page = pdf_reader.getPage(0) text = page.extractText() print(text) pdf_file.close() ``` 这段代码使用了PyPDF2库打开了一个名为example.pdfPDF文件。然后,它使用PdfFileReader方法读取PDF文件中的页面。接下来,它提取了第一页的文本,并将其打印到屏幕上。 步骤三:使用PythonExcel文件 使用PythonExcel文件同样也很容易。只需使用下面的代码: ``` import openpyxl wb = openpyxl.Workbook() sheet = wb.active sheet['A1'] = 'Hello' sheet['B1'] = 'World' wb.save('example.xlsx') ``` 这段代码创建了一个名为example.xlsx的Excel文件,并在其中编了“Hello”和“World”两个单元格。最后,这个代码将修改后的Excel文件保存到磁盘上。 步骤四:将PDF文本入Excel文件中 要将PDF文件中的文本入Excel文件中,你需要将步骤二和步骤三中的代码组合在一起。下面是一个实现示例: ``` import PyPDF2 import openpyxl pdf_file = open('example.pdf', 'rb') pdf_reader = PyPDF2.PdfFileReader(pdf_file) text = '' for page in range(pdf_reader.getNumPages()): current_page = pdf_reader.getPage(page) text += current_page.extractText() pdf_file.close() wb = openpyxl.Workbook() sheet = wb.active sheet['A1'] = text wb.save('example.xlsx') ``` 这个代码打开PDF文件,将所有页面的文本提取到一个字符串中,并将文本入Excel文件中。最后,它将Excel文件保存到磁盘上。 总结 Python是一门强大的编程语言,用于读取PDF文件并将其入Excel文件非常容易。你只需要使用PyPDF2库读取PDF文件的内容,并使用openpyxl库编Excel文件即可。这个过程很简单,但可以为你的工作带来很大的便利。 ### 回答3: Python是一种易于学习的编程语言,经常用于数据分析和自动化处理。如果需要将PDF文件的内容提取并入Excel表格中,Python可以轻松实现这个任务。接下来,我将介绍如何使用Python读取PDF文件并将其入Excel。 1. 安装必要的Python库 在开始之前,我们需要安装一些必要的Python库来处理PDF和Excel文件,可以使用以下命令: pip install PyPDF2 pip install openpyxl 其中,PyPDF2库用于处理PDF文件,而openpyxl用于处理Excel文件。 2. 读取PDF文件读取PDF文件,我们可以使用PyPDF2库。以下代码展示如何打开一个PDF文件并提取所有页的文本内容: ``` import PyPDF2 pdf_file = open('example.pdf', 'rb') pdf_reader = PyPDF2.PdfFileReader(pdf_file) page_count = pdf_reader.numPages all_text = '' for i in range(page_count): page = pdf_reader.getPage(i) text = page.extractText() all_text += text pdf_file.close() print(all_text) ``` 上述代码打开一个名为“example.pdf”的PDF文件,并提取所有页中的文本内容,将其放入名为“all_text”的字符串变量中。注意,在使用完毕后需要关闭文件句柄。 3. 入Excel文件 要将PDF文件的内容入Excel表格中,我们可以使用openpyxl库。以下代码展示如何创建一个Excel工作簿、工作表、以及入数据至单元格: ``` import openpyxl wb = openpyxl.Workbook() ws = wb.active ws['A1'] = 'PDF内容' ws['B1'] = '其他列' row = 2 for line in all_text.split('\n'): ws.cell(row=row, column=1, value=line) row += 1 wb.save('example.xlsx') ``` 该代码使用openpyxl创建一个Excel工作簿,然后向其中添加一个名为“PDF内容”的列和另外一些列。接着,通过分割刚才提取的PDF内容字符串中的换行符,将每行文本一个一个入Excel表格中的第一列。最终请注意保存Excel工作簿。 以上就是使用Python读取PDF文件并将其入Excel表格的方法,这一过程需要安装必要的库,并且需要一些编程知识和技巧。但一旦你熟练掌握了这些技能,读取文件处理数据的任务将变得轻松而愉快。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值