下面是“Python利用pdfplumber实现读取PDF写入Excel”的完整实例教程:
1. 安装pdfplumber和openpyxl
在使用pdfplumber和openpyxl前,需要先安装它们。可以使用pip命令安装:
pip install pdfplumber openpyxl
2. 读取PDF文件
在使用pdfplumber读取PDF文件前,需要先引入pdfplumber:
import pdfplumber
读取PDF文件的操作很简单:使用pdfplumber打开文件,然后获取每一页的文本内容。下面是示例代码:
pdf_file = pdfplumber.open('test.pdf')
for page in pdf_file.pages:
page_text = page.extract_text()
print(page_text)
pdf_file.close()
上述代码会将test.pdf文件中的所有内容打印出来。
3. 写入Excel文件
在使用openpyxl写入Excel文件前,需要先引入openpyxl:
import openpyxl
写入Excel文件的操作也很简单:创建一个workbook对象,然后在其上创建一个worksheet对象,并将数据写入worksheet对象中。下面是示例代码:
workbook = openpyxl.Workbook()
worksheet = workbook.active
worksheet['A1'] = 'Hello'
worksheet['B1'] = 'World'
workbook.save('test.xlsx')
上述代码会创建一个名为test.xlsx的Excel文件,并在其中写入“Hello”和“World”。
4. 将PDF文件内容写入Excel文件
现在我们需要将PDF文件中的内容读取出来,并写入Excel文件中。下面是完整的示例代码:
import pdfplumber
import openpyxl
pdf_file = pdfplumber.open('test.pdf')
workbook = openpyxl.Workbook()
worksheet = workbook.active
for page in pdf_file.pages:
page_text = page.extract_text()
for line in page_text.split('\n'):
line_list = line.split()
for i, cell_value in enumerate(line_list):
worksheet.cell(row=i+1, column=len(worksheet['A'])+1, value=cell_value)
pdf_file.close()
workbook.save('output.xlsx')
上述代码会将test.pdf中的所有文本内容按单词拆分,并逐个写入到一个Excel文件中,文件名为output.xlsx。
5. 其他示例说明
1)获取PDF文件中的表格内容并写入Excel文件
可以使用pdfplumber的extract_table()方法来获取PDF文件中的表格内容,并将其写入Excel文件。示例代码如下:
import pdfplumber
import openpyxl
pdf_file = pdfplumber.open('test.pdf')
workbook = openpyxl.Workbook()
worksheet = workbook.active
for page in pdf_file.pages:
table = page.extract_table()
for row in table:
worksheet.append(row)
pdf_file.close()
workbook.save('output.xlsx')
2)获取PDF文件中的图片并保存到本地
可以使用pdfplumber的extract_image()方法来获取PDF文件中的图片,并保存到本地。示例代码如下:
import pdfplumber
pdf_file = pdfplumber.open('test.pdf')
for page in pdf_file.pages:
for img in page.images:
img_obj = img['stream'].get_object()
img_name = img_obj.get('Name')
with open(f"{img_name}.jpg", "wb") as f:
f.write(img["stream"].get_raw())
pdf_file.close()
上述代码会将test.pdf中的所有图片保存到本地,并以图片名称作为文件名保存。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python利用pdfplumber实现读取PDF写入Excel - Python技术站