其他
如何使用 python 提取 PDF 表格及文本,并保存到 Excel
The following article is from Python大数据分析 Author 朱卫军
↓推荐关注↓
import pdfplumber
# 读取pdf文件,保存为pdf实例
pdf = pdfplumber.open("E:\\nba.pdf")
# 访问第二页
first_page = pdf.pages[1]
# 自动读取表格信息,返回列表
table = first_page.extract_table()
table
# 将列表转为df
table_df = pd.DataFrame(table_2[1:],columns=table_2[0])
# 保存excel
table_df.to_excel('test.xlsx')
table_df
pdfplumber简介
pdfplumber安装和导入
....
pdfplumber简单使用
.metadata | |
.pages | pdfplumber.Page 实例的列表,每一个实例代表pdf每一页的信息。 |
import pdfplumber
# 读取pdf文件,返回pdfplumber.PDF类的实例
pdf = pdfplumber.open("e:\\nba2.pdf")
pdf.metadata
len(pdf.pages)
first_page = pdf.pages[0]
# 查看页码
print('页码:',first_page.page_number)
# 查看页宽
print('页宽:'first_page.width)
# 查看页高
print('页高:'first_page.height)
text = first_page.extract_text()
print(text)
读取第二页的表格
# 第二页pdfplumber.Page实例
first_page = pdf.pages[1]
# 自动读取表格信息,返回列表
table = first_page.extract_tables()
# 将列表转为df
table_df = pd.DataFrame(table_2[1:],columns=table_2[0])
table_df
.extract_table()
方法可以提取表格,返回从页面上最大的表中提取的文本,以列表列表的形式显示,结构为row -> cell。extract_table
使用页面的垂直和水平线(或矩形边缘)作为单元格分隔符。该方法可以通过table_settings参数进行高度自定义。可能的设置及其默认值:"vertical_strategy": "lines",
"horizontal_strategy": "lines",
"explicit_vertical_lines": [],
"explicit_horizontal_lines": [],
"snap_tolerance": 3,
"join_tolerance": 3,
"edge_min_length": 3,
"min_words_vertical": 3,
"min_words_horizontal": 1,
"keep_blank_chars": False,
"text_tolerance": 3,
"text_x_tolerance": None,
"text_y_tolerance": None,
"intersection_tolerance": 3,
"intersection_x_tolerance": None,
"intersection_y_tolerance": None,
}
pdfplumber的独特之处
- EOF -
1、可能是全网最完整的 Python 操作 Excel库总结!
觉得本文对你有帮助?请分享给更多人
推荐关注「Python开发者」,提升Python技能
点赞和在看就是最大的支持❤️