-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathshow_metadata.py
More file actions
36 lines (30 loc) · 1.31 KB
/
Copy pathshow_metadata.py
File metadata and controls
36 lines (30 loc) · 1.31 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import os
from PyPDF2 import PdfReader
def check_pdf_metadata(pdf_path):
if not os.path.exists(pdf_path):
print(f"File {pdf_path} does not exist.")
return None
with open(pdf_path, "rb") as f:
reader = PdfReader(f)
if reader.is_encrypted:
try:
reader.decrypt('')
except:
print(f"Failed to decrypt {pdf_path}")
return None
info = reader.metadata
if info:
print(f"Metadata for {pdf_path}:")
print(f" Title: {info.title if info.title else 'N/A'}")
print(f" Author: {info.author if info.author else 'N/A'}")
print(f" Subject: {info.subject if info.subject else 'N/A'}")
print(f" Producer: {info.producer if info.producer else 'N/A'}")
print(f" Creation Date: {info.creation_date if info.creation_date else 'N/A'}")
print(f" Mod Date: {info.modification_date if info.modification_date else 'N/A'}")
return info
else:
print(f"No metadata found in {pdf_path}")
return None
# Example usage
pdf_path = "/Users/paruparu/github/summarize_arxv/Depth-of-Field.pdf" # これは絶対パスでも相対パスでも構いません
metadata = check_pdf_metadata(pdf_path)