def read_pdf(path):
from PyPDF2 import PdfReader
with open(path ,'rb') as f:
pdf = PdfReader(f)
info = pdf.metadata
number = len(pdf.pages)
for i in range(number):
print(pdf.pages[i].extract_text())
print(info)
print(number)
def read_pdf2(path):
import pdfplumber
with pdfplumber.open(path) as pdf:
print(pdf.pages)
for i in range(len(pdf.pages)):
page = pdf.pages[i]
print(page.extract_text())
for page in pdf.pages:
print(page.extract_text())
def merger_pdf(path1, path2, outPath):
from PyPDF2 import PdfReader, PdfWriter
write = PdfWriter()
for path in [path1,path2]:
tmp_pdf = PdfReader(open(path, 'rb'))
for page in tmp_pdf.pages:
write.add_page(page)
with open(outPath, 'wb') as out:
write.write(out)
def split_pdf(path, outDir):
from PyPDF2 import PdfReader, PdfWriter
pdf = PdfReader(open(path, 'rb'))
for i, page in enumerate(pdf.pages):
write = PdfWriter()
write.add_page(page)
with open(f"{outDir}拆分PDF_{i}.pdf", 'wb') as out:
write.write(out)
def jia_mi(path, outPath):
from PyPDF2 import PdfReader, PdfWriter
pdf = PdfReader(open(path, 'rb'))
if pdf.is_encrypted:
pdf.decrypt('123456')
write = PdfWriter()
write.encrypt('123456')
for page in pdf.pages:
write.add_page(page)
with open(outPath, 'wb') as out:
write.write(out)
if __name__ == '__main__':
jia_mi('./办公自动化/files/违章通知书.pdf', './办公自动化/files/加密PDF.pdf')