[pypdf] PDFのドキュメント内 リンクオブジェクトを収集する
#! /usr/bin/env python3
# coding: utf-8
import sys
from pypdf import PdfReader
file_path = sys.argv[1]
#file_path = "/some/dir/koko-ha/fullpath-ne/Desktop/調べたい.pdf"
app_PdfReader = PdfReader(file_path)
for itemPage in app_PdfReader.pages:
if "/Annots" in itemPage:
for annotArray in itemPage["/Annots"]:
subtype = annotArray.get_object()["/Subtype"]
if subtype == "/Link":
dict_Annot = (annotArray.get_object())
# print(dict_Annot)
if "/A" in dict_Annot:
# print(annotArray.get_object()["/A"])
dict_A = (annotArray.get_object()["/A"])
if "/D" in dict_A:
print(dict_A.get_object()["/D"])
elif "/URI" in dict_A:
print(dict_A.get_object()["/URI"])
# if "/Dest" in dict_Annot:
# print(annotArray.get_object()["/Dest"])
# obj_dist = annotArray.get_object()["/Dest"]
# print(obj_dist["target_page_index"])
# Dest関連はエラーになるので仕様通りに動作しない
sys.exit(0)
| 固定リンク
「PDF Pypdf」カテゴリの記事
- [pypdf]暗号化設定(encrypt)アクセス許可設定(UserAccessPermissions)例(2025.06.02)
- [pypdf]PDFのメタデータの削除(PowerShell利用 Windows・macOS共通)(2025.06.01)
- [pypdf]PDFへの透かし入れ(2025.04.21)
- [python3]PDF拡大縮小(pypdf:拡大縮小率で縦横サイズ比を保つ pyPDF2:指定したページサイズにFIT) pyPDF2のv3x系に対応(2025.04.19)
- [pypdf]8in1集約 ページ順 左から右 PDFページの回転を考慮する(2025.04.14)