外部参照表不是零索引的。将更正对象的ID号。不会继续

问题描述 投票:3回答:1

我正在尝试打开pdf来获取页数。我正在使用PyPDF2。

这是我的代码:

def pdfPageReader(fileName):
    try:
        pdf_file = open(fileName, 'rb')
        read_pdf = PyPDF2.PdfFileReader(pdf_file, strict=True)
        number_of_pages = read_pdf.getNumPages()
        print(str(fileName) + " = " + str(number_of_pages))
        pdf_file.close()
        return number_of_pages
    except:
        return "1"

但后来我遇到了这个错误:

PdfReadWarning:Xref表未归零。将更正对象的ID号。 [pdf.py:1736]

我尝试使用strict = True和strict = False,当它为True时,它显示此消息,没有,我等了30分钟,但什么都没发生。当它为False时,它只显示任何内容,就是它,什么都不做,如果我按下终端上的ctrl + c(cmd,windows 10)然后取消打开并继续(我在一批pdf文件中运行它) )。批次中只有1个出现此问题。

我的问题是,如何解决这个问题,或者如何跳过此问题,或者如何取消此操作并继续使用其他pdf文件?

python-3.x pypdf2
1个回答
2
投票

我有同样的问题,并寻找一种方法来跳过它。我不是程序员,但是在查看有关警告的documentation时,有一段代码可以帮助您避免这种障碍。

虽然我不推荐这个作为解决方案,但我用于我的目的的代码片段(只是从链接上的doc复制并粘贴)

import sys

if not sys.warnoptions:
    import warnings
    warnings.simplefilter("ignore")
© www.soinside.com 2019 - 2024. All rights reserved.