python - 如何使用pyPdf2获取PDF索引的数据框
问题描述
我想用 pyPdf2 获取 PDF 索引的数据火焰。
我在 Read all bookmarks from a PDF document and create a dictionary 中找到了以下代码, 其中包含书签的 PageNumber 和 Title
import PyPDF2
def show_tree(bookmark_list, indent=0):
for item in bookmark_list:
if isinstance(item, list):
# recursive call with increased indentation
show_tree(item, indent + 4)
else:
print(" " * indent + item.title)
reader = PyPDF2.PdfFileReader("[your filename]")
show_tree(reader.getOutlines())
我修改了这个函数如下
def show_bookmark(bookmark_list, indent=0):
IndexDataFrame = pd.DataFrame(index=[], columns=['IndexLevel', 'Title'])
for item in bookmark_list:
if isinstance(item, list):
# recursive call with increased indentation
show_bookmark(item, indent + 1)
else:
record = pd.Series([indent, item.title], index=IndexDataFrame.columns)
IndexDataFrame = IndexDataFrame.append(record, ignore_index=True)
#print(indent, item.title)
return IndexDataFrame
但是,IndexDataFrame
不包括ALL OF DATA,只包括那些 indexLeve 为 0 的数据。
我只想将前一个函数的数据打印为一种数据框。
解决方案
推荐阅读
- php - 使用 iframe 在网站上添加背景音乐
- python - 字符串中间的Python正则表达式
- mysql - MySQL根据分组查询结果计算比率
- haskell - 如何编写函数属性的快速检查?
- woocommerce - Woocommerce 在管理仪表板上编辑订单
- javascript - Vue.js 提交文本按钮
- javascript - 在这种情况下,我如何实现功能循环语句而不是 for 循环?
- sql-server - 对安装在 Linux 服务器下的 MSSQL 的 Window 身份验证
- javascript - 如何将传输器插入到 Node.js 应用程序的服务中?
- django - 基于用户登录和外键其他模型的 Django 查询集(过滤器)