Computer >> Máy Tính >  >> Lập trình >> Python

Trích xuất siêu liên kết từ PDF bằng Python

Python có một bộ thư viện lớn để xử lý các loại hoạt động khác nhau. Để trích xuất dữ liệu và siêu thông tin từ một tệp PDF, chúng tôi sử dụng gói PyPdf2. Nó rất dễ sử dụng và có nhiều thao tác hoặc bộ công cụ khác nhau như Trích xuất dữ liệu từ PDF, Tìm kiếm Từ khóa trong Tài liệu, Trích xuất Thông tin Meta như tìm Siêu liên kết, URL và các thông tin khác. Sử dụng gói PyPDF2, chúng tôi sẽ trích xuất siêu liên kết từ tài liệu pdf.

Chúng tôi sẽ làm theo các bước sau để trích xuất các siêu liên kết từ PDF,

  • Cài đặt PyPDF2 trong máy cục bộ bằng cách nhập pip install PyPDF2 trong trình bao lệnh.

  • Nhập PyPDF2.

  • Mở tệp ở Chế độ nhị phân và nó nhận dạng mẫu URL trong tệp.

  • Xác định một chức năng để trích xuất liên kết cho một trang cụ thể.

  • Lặp lại trên tất cả các trang và trích xuất văn bản bằng cách sử dụng extractText () chức năng.

  • Để trích xuất các siêu liên kết từ PDF, chúng tôi thường sử dụng Khái niệm Đối sánh Mẫu trong Python. Bây giờ nhập lại để tìm mẫu bằng cách sử dụng biểu thức chính quy.

  • Tìm mẫu phù hợp với https:// hoặc https:// bằng cách sử dụng findall (regex, string) .

  • Nếu tìm thấy bất kỳ URL nào, hãy trả lại URL đó và in nó trên màn hình.

Ví dụ

# Import necessary packages
import PyPDF2
import re
# Open The File in the Command
file = open("newfile.pdf", 'rb')
readPDF = PyPDF2.PdfFileReader(file)
def find_url(string):
   #Find all the String that matches with the pattern
   regex = r"(https?://\S+)"
   url = re.findall(regex,string)
   for url in url:
      return url
# Iterating over all the pages of File
for page_no in range(readPDF.numPages):
   page=readPDF.getPage(page_no)
   #Extract the text from the page
   text = page.extractText()
   # Print all URL
   print(find_url(text))
# CLost the file
file.close()

Đầu ra

Chạy mã trên sẽ in tất cả các siêu liên kết có sẵn trong tệp tài liệu PDF đã cho.

Trích xuất siêu liên kết từ PDF bằng Python