Подсчет страниц в pdf PyPDF2 и пропуск 0 КБ или поврежденных файлов - PullRequest
0 голосов
/ 08 февраля 2020

У меня есть скрипт, который считает страницы во всех PDF-файлах в каталоге. Однако я получаю сообщение об ошибке, когда он достигает 0 КБ или поврежден файл. У меня есть тысячи файлов, и мне потребуется время, чтобы удалить их все. Я бы предпочел пропустить это. Однако я не могу придумать пути к этому.

import os
import re
import pandas as pd
from PyPDF2 import PdfFileReader

pagesX = pd.DataFrame(columns=['fileName', 'fileLocation','pageNumber'])
for root, dirs, files in os.walk("filepath"):
    for f in files:
        if f.endswith(".pdf"):
            pdf=PdfFileReader(open(os.path.join(root, f),'rb'))
            pagesXa = pd.DataFrame([[f, os.path.join(root,f), pdf.getNumPages()]], columns=['fileName', 'fileLocation', 'pageNumber'])
            pagesX = pagesX.append(pagesXa, ignore_index=True) 
pagesX.head()

Как я могу пропустить это?

Ошибка, которую я получаю:

Ошибка OSE: [Errno 22] Invalid Аргумент

Я подтвердил, что это прекрасно работает в каталоге без файлов размером 0 КБ.

...