通过Python内部链接拆分pdf文档

时间:2019-05-09 08:03:26

标签: python python-3.x pdf

我需要分割一个名为maintoc.pdf的pdf文件。这个文件是其他文档的大目录,因此我需要提取此文档中的每个ToC并将其放在单独的文件中。 maintoc.pdf文件具有带有内部链接的书签索引。但是我无法找出此链接指向的页面以分割文件。

我正在使用Python 3和PyMuPDF 1.14.12来发现我的文件。特别是用于获取maintoc.pdf目录表的方法getToC

mtoc_file = "maintoc.pdf"
x=fitz.open(mtoc_file)
mtoc = x.getToC(False)
mtoc_link = []
for t in mtoc:
    if 'file' in t[3] and mtoc_file in t[3]['file']:
        print(t)
        mtoc_link.append(t[3]['file'])

每个t元素都是这样的:

[1, 'bookmark name', -1, {'kind': 3, 'xref': 0, 'file': 'maintoc.pdf', 
'page': 0, 'to': Point(0.0, 0.0), 'zoom': 0.0}]

[2, 'bookmark name', -1, {'kind': 3, 'xref': 0, 'file': 
'maintoc.pdf#fa39a4d0-6c77-42c7-b406-4dc6031d653d'}]

[2, 'bookmark name', -1, {'kind': 3, 'xref': 0, 'file': 
'maintoc.pdf#412f2749-590c-47ff-bb3a-6b481c55c54e'}]

[3, 'bookmark name', -1, {'kind': 3, 'xref': 0, 
'file': 'maintoc.pdf#c273d2cd-8867-4318-95cb-563f1645b89b'}]

//and so on for all bookmarks ...

我需要做的是找出maintoc.pdf的页码被链接 像这样的链接:

maintoc.pdf#fa39a4d0-6c77-42c7-b406-4dc6031d653d //page?
maintoc.pdf#412f2749-590c-47ff-bb3a-6b481c55c54e //page?
maintoc.pdf#c273d2cd-8867-4318-95cb-563f1645b89b //page?

有什么主意吗?

0 个答案:

没有答案