提取pdf文件内容

pdfplumber提取文字
import pdfplumber
with pdfplumber.open(‘XXX.Pdf’) as pd:
#pdfplumber.open(PDF路径)
first_page=pdf.pages[0]
#pdf.pages[页数]
print(first_page.extract_text())

pdfplumber提取表格
with pdfplumber.open(‘XXX.Pdf’) as pd:
table_page=pdf.pages[0]
table=table_page.extract_table()
print(table)
#提取多个表格
for table in table_page.extract_tables():
print(table) #table信息为列表类型
提取表格时的设定
table_page.extract_table(
table_settings={
‘vertical_strategy’:‘text’
‘horizontal_strategy’:‘text’
})

写入excel表格文件中
from openpyxl import Workbook
workbook=Workbook()
sheet=workbook.active
for row in table:
sheet.append(row)
workbook.save(filename=‘XXX.xlsx’) #存在空行和将单词分到多个不同列的问题

去除空行,将每个元素连成一个字符串,如果还是一个空字符串那么肯定是空行
new_table=[]
for row in table:
if not ‘’.join([str(item) for item in row])==’’:
#’ ,’.join(S):将列表S中的元素以,连接起来
将被分割的单词所在列内容合成字符串,再合成一个列表
new_row=[]
new_row.append(’’.join([str(item) if item else ‘’ for item in row[:3]]))
#语句1 if 条件 else 语句2 for 条件 先for循环在if判断
new_row+=row[3:]
new_table.append(new_row)
学习链接:https://www.bilibili.com/video/BV197411f7Rp

你可能感兴趣的:(提取pdf文件内容)