Phát triển ứng dụng để làm việc với PDF thông qua Thư viện Python

API Python nguồn mở có khả năng Tách, Hợp nhất, Cắt và Chuyển đổi các trang của tệp PDF, thêm dữ liệu tùy chỉnh & Mật khẩu vào PDF.

PyPDF2 là một thư viện Python thuần túy mã nguồn mở cung cấp khả năng làm việc với các tệp PDF bên trong các ứng dụng Python mà không có bất kỳ phụ thuộc bên ngoài nào. Thư viện đã bao gồm hỗ trợ cho nhiều tính năng PDF quan trọng như hợp nhất nhiều tệp PDF, trích xuất nội dung của tệp PDF, xoay các trang tệp PDF theo một góc, chia tỷ lệ các trang PDF, chuyển đổi trang tệp PDF, trích xuất hình ảnh từ các trang PDF và nhiều hơn nữa.

Thư viện lập trình mã nguồn mở PyPDF2 rất dễ sử dụng và mã nguồn được ghi chép đầy đủ và dễ hiểu. Thư viện cho phép các nhà phát triển đọc và trích xuất siêu dữ liệu của Tệp PDF như số lượng trang, tác giả, người tạo, được tạo và thời gian cập nhật lần cuối, v.v. Thư viện cũng hỗ trợ mã hóa và giải mã các tệp PDF chỉ với một vài dòng mã Python.

.

Previous Next

Bắt đầu với PyPDF2

PyPDF2 không phải là một phần của Thư viện chuẩn Python, vì vậy bạn sẽ cần phải tự cài đặt nó. Cách ưa thích để làm như vậy là sử dụng pip.

Cài đặt PyPDF2 qua pip

 python -m pip install pypdf2  

Trích xuất văn bản từ PDF qua Python

Thư viện PyPDF2 cung cấp khả năng trích xuất theo chương trình văn bản từ tệp PDF qua Python. Không dễ dàng để lấy dữ liệu từ tệp PDF vì cách PDF lưu trữ thông tin khiến bạn khó đạt được nó. PyPDF2 giúp các nhà phát triển thực hiện công việc dễ dàng bằng cách cung cấp cho họ các chức năng tích hợp sẵn để truy xuất thông tin dễ sử dụng. Họ có thể sử dụng phương thức extractText () trên đối tượng trang để lấy nội dung văn bản của trang.

Trích xuất văn bản từ PDF qua Python

 // extract text from a PDF
  from PyPDF2 import PdfReader
  reader = PdfReader("example.pdf")
  page = reader.pages[0]
  print(page.extract_text()) 

Đọc tệp PDF qua Python

Thư viện PyPDF2 cung cấp khả năng trích xuất theo chương trình văn bản từ tệp PDF qua Python. Không dễ dàng để lấy dữ liệu từ tệp PDF vì cách PDF lưu trữ thông tin khiến bạn khó đạt được nó. PyPDF2 giúp công việc của các nhà phát triển trở nên dễ dàng bằng cách cung cấp cho họ các chức năng tích hợp sẵn để truy xuất thông tin dễ sử dụng. Họ có thể sử dụng phương thức extractText () trên đối tượng trang để lấy nội dung văn bản của trang.

Đọc tệp PDF qua Python

 // Reading text from a PDF
    from PyPDF2 import PdfReader
  reader = PdfReader("example.pdf")
  for page in reader.pages:
    if "/Annots" in page:
      for annot in page["/Annots"]:
        subtype = annot.get_object()["/Subtype"]
        if subtype == "/Text":
          print(annot.get_object()["/Contents"]) 

Hợp nhất hoặc chia nhỏ tài liệu PDF

Bạn đã bao giờ rơi vào trường hợp cần hợp nhất hai hoặc nhiều tệp PDF thành một tài liệu duy nhất chưa? Tổ chức thường yêu cầu hợp nhất nhiều tệp PDF thành một tài liệu duy nhất. Thư viện PyPDF2 cung cấp khả năng kết hợp các tệp PDF chỉ với một vài dòng mã Python. Các nhà phát triển cũng có thể dễ dàng chia các tài liệu PDF lớn thành các tài liệu nhỏ hơn theo nhu cầu của họ. Các nhà phát triển có thể dễ dàng trích xuất một phần cụ thể của sách PDF hoặc chia nó thành nhiều tệp PDF

Hợp nhất các tệp PDF qua Python

 // Merge PDF files 
  from PyPDF2 import PdfMerger
  merger = PdfMerger()
  for pdf in ["file1.pdf", "file2.pdf", "file3.pdf"]:
    merger.append(pdf)
  merger.write("merged-pdf.pdf")
  merger.close()

Trích xuất siêu dữ liệu từ tệp PDF

Thư viện PyPDF2 đã bao gồm chức năng trích xuất Siêu dữ liệu từ tài liệu PDF bằng cách sử dụng một vài lệnh Python. Bạn có thể dễ dàng nhận được thông tin về tác giả, ứng dụng tạo, số trang, tiêu đề tài liệu và ngày tạo, v.v. Bạn có thể dễ dàng trích xuất siêu dữ liệu của tài liệu PDF và sử dụng theo nhu cầu của mình.

 

Trích xuất siêu dữ liệu từ PDF qua Python

 // Reading PDF Metadata 
  from PyPDF2 import PdfReader
reader = PdfReader("example.pdf")
meta = reader.metadata
print(len(reader.pages))
# All of the following could be None!
print(meta.author)
print(meta.creator)
print(meta.producer)
print(meta.subject)
print(meta.title)
 Tiếng Việt