代码之家  ›  专栏  ›  技术社区  ›  Shubh

如何用python提取pdf中包含图像的页面?

  •  0
  • Shubh  · 技术社区  · 6 年前

    我有4000个扫描文档作为PDF格式。每个PDF包含一个我想提取的KYC格式。每个PDF都有40页。我们可以用什么技术来获得图像的页数,因为我可以用PDF2图像提取页面,只要我有页码。

    enter image description here

    enter image description here

    KYC表格将是类似的,并将有张贴的图像。我把图像弄模糊了,但质量会更好

    1 回复  |  直到 6 年前
        1
  •  1
  •   Ed Sheehan    6 年前

    这是一种简单的方法,扫描所有书签以找到匹配的对象,然后扫描每个页面,直到它匹配相同的对象。可能不是最优雅的方法,但应该完成工作。

    from PyPDF2 import PdfFileReader
    reader = PdfFileReader('D:\\Downloads\Sample.pdf')
    
    # Scan outlines for bookmark containing KYC
    outlines = reader.outlines
    print(outlines)
    for bookmark in outlines:
        print(bookmark['/Title'])
        print(bookmark['/Page'])
        if bookmark['/Title'] == 'KYC':
            mypage = bookmark['/Page']
    
    # Scan page looking for the matching object        
    print(reader.getNumPages())
    for x in range(0, reader.getNumPages()): 
        apage = reader.getPage(x)
        print(apage)
        if apage == mypage:
            print('Eureka on page', x + 1)