2017-08-23 812 views

答えて

1

コードスニペットを残してください。ここでのコンテキストはlink to the current pdfminer.six repoです。resolve1メソッドについてもう少し学ぶことができます。

あなたがpdfminerを使用しているときに、PDFObjRefのオブジェクトを印刷して表示することがあります。基本的にはresolve1を使ってそれらのオブジェクトを展開することができます(通常は辞書です)。

from pdfminer.pdfparser import PDFParser 
from pdfminer.pdfdocument import PDFDocument 
from pdfminer.pdfpage import PDFPage 
from pdfminer.pdfinterp import resolve1 

file = open('some_file.pdf', 'rb') 
parser = PDFParser(file) 
document = PDFDocument(parser) 

# This will give you the count of pages 
print(resolve1(document.catalog['Pages'])['Count']) 
+1

おかげで多くの仲間 その良い方法での作業 –

0

pdfminerimportを使用してください。

from pdfminer.pdfparser import PDFParser 
from pdfminer.pdfdocument import PDFDocument 
from pdfminer.pdfpage import PDFPage 

ファイルオブジェクトに関連付けられたPDFパーサーオブジェクトを作成します。

fp = open('your_file.pdf', 'rb') 
parser = PDFParser(fp) 

ドキュメント構造を格納するPDFドキュメントオブジェクトを作成します。ページがあるたびにインクリメントcreate_pages()機能により

document = PDFDocument(parser) 

反復。

num_pages = 0 
for page in PDFPage.create_pages(document): 
    num_pages += 1 
print(num_pages) 
+0

私はそれをよく知っています。 それはポイントではない。 ループの直前のページ数を教えてもらうために、問題が発生していることがわかったら質問が表示されます。 –

+0

はい、私はこの問題を見てきました。 'pdfminer'の組み込み関数はありません。あなたが回避策を行わなければならないことを知っていたら、それを行う直接的な方法はないと理解できないでしょうか? – Mangohero1

+0

ありがとうございました... –

関連する問題