Trích xuất văn bản python

Tất cả các bạn phải quen thuộc với PDF là gì. Trên thực tế, chúng là một trong những phương tiện kỹ thuật số quan trọng và được sử dụng rộng rãi nhất. PDF là viết tắt của Định dạng tài liệu di động. Nó sử dụng. phần mở rộng pdf. Nó được sử dụng để trình bày và trao đổi tài liệu một cách đáng tin cậy, độc lập với phần mềm, phần cứng hoặc hệ điều hành

Chúng tôi sẽ trích xuất văn bản từ tệp pdf bằng hai thư viện Python, PyPDF và PyMuPDF, trong bài viết này.  

Trích xuất văn bản từ tệp PDF bằng thư viện PyPDF

Gói Python PyPDF có thể được sử dụng để đạt được những gì chúng ta muốn (trích xuất văn bản), mặc dù nó có thể làm được nhiều hơn những gì chúng ta cần. Gói này cũng có thể được sử dụng để tạo, giải mã và hợp nhất các tệp PDF. Ghi chú. Để biết thêm thông tin, tham khảo Làm việc với tệp PDF trong Python

Cài đặt

Để cài đặt gói này, gõ lệnh dưới đây trong thiết bị đầu cuối

pip install PyPDF2

Ví dụ. Nhập PDF.

Trích xuất văn bản python
 

Python3




# importing required modules

from PyPDF2import PdfReader

 

reader = PdfReader('example.pdf')
0

reader = PdfReader('example.pdf')
1
reader = PdfReader('example.pdf')
2
reader = PdfReader('example.pdf')
3
reader = PdfReader('example.pdf')
4
reader = PdfReader('example.pdf')
5

 

reader = PdfReader('example.pdf')
6

reader = PdfReader('example.pdf')
7
reader = PdfReader('example.pdf')
8
reader = PdfReader('example.pdf')
9
print(len(reader.pages))
0

 

print(len(reader.pages))
1

print(len(reader.pages))
2_______1_______2
print(len(reader.pages))
4
print(len(reader.pages))
5
print(len(reader.pages))
6

 

print(len(reader.pages))
7

print(len(reader.pages))
8
reader = PdfReader('example.pdf')
2
page = reader.pages[0]
0

reader = PdfReader('example.pdf')
7
page = reader.pages[0]
2

đầu ra.  

Trích xuất văn bản python
 

Hãy để chúng tôi cố gắng hiểu đoạn mã trên

reader = PdfReader('example.pdf')
  • Chúng tôi đã tạo một đối tượng của lớp PdfReader từ mô-đun PyPDF2
  • Lớp PdfReader lấy một đối số vị trí bắt buộc của đường dẫn đến tệp pdf
print(len(reader.pages))
  • pages cung cấp Danh sách PageObjects. Vì vậy, ở đây chúng ta có thể sử dụng hàm len() có sẵn của python để lấy số trang trong tệp pdf
page = reader.pages[0]
  • Bây giờ, với tư cách là người đọc. pages là danh sách PageObjects, chúng ta có thể lấy một Trang cụ thể của pdf bằng cách nhấn vào chỉ mục của trang. Trong danh sách python, việc lập chỉ mục bắt đầu từ 0, vì vậy người đọc. pages[0] cung cấp cho chúng tôi trang đầu tiên của tệp pdf
text = page.extract_text()
print(text)
  • Đối tượng trang có chức năng extract_text() để trích xuất văn bản từ trang pdf

Trích xuất văn bản từ tệp PDF bằng thư viện PyMuPDF

PyMuPDF là thư viện Python hỗ trợ các định dạng tệp như XPS, PDF, CBR và CBZ. Nhưng hiện tại, trong bài viết này, chúng tôi sẽ tập trung vào các tệp PDF (Định dạng Tài liệu Di động)

Cài đặt

Python3




page = reader.pages[0]
3
reader = PdfReader('example.pdf')
2
reader = PdfReader('example.pdf')
2
page = reader.pages[0]
6_______21_______7
page = reader.pages[0]
8

Trong khi tôi đang viết bài này, 1. 16. 14 là phiên bản hiện tại của thư viện PyMuPDF

Để trích xuất văn bản từ pdf, chúng ta cần làm theo các bước sau

  1. Nhập thư viện
  2. văn bản mở đầu
  3. Trích xuất văn bản

Ghi chú. Chúng tôi đang sử dụng mẫu. pdf tại đây; .  

https. //www. châu phi. edu/hình ảnh/mặc định/mẫu. pdf - mẫu. pdf

1. Nhập thư viện

Python3




import

text = page.extract_text()
print(text)
0

2. văn bản mở đầu

Python3




text = page.extract_text()
print(text)
1
reader = PdfReader('example.pdf')
2
text = page.extract_text()
print(text)
3
text = page.extract_text()
print(text)
4
reader = PdfReader('example.pdf')
8
text = page.extract_text()
print(text)
6
reader = PdfReader('example.pdf')
5

Ở đây, chúng tôi đã tạo một đối tượng có tên là “doc” và tên tệp phải là một chuỗi Python

3. Trích xuất văn bản

Python3




text = page.extract_text()
print(text)
8
print(len(reader.pages))
2# importing required modules0 # importing required modules1

# importing required modules2_______11_______8

reader = PdfReader('example.pdf')
2 # importing required modules5

# importing required modules2_______1_______7

page = reader.pages[0]
2

Ở đây, chúng tôi lặp lại các trang trong pdf và sử dụng phương thức get_text() để trích xuất từng trang từ tệp

Tất cả Mã để trích xuất văn bản

Python3




import

text = page.extract_text()
print(text)
0

text = page.extract_text()
print(text)
1
reader = PdfReader('example.pdf')
2
text = page.extract_text()
print(text)
3
text = page.extract_text()
print(text)
4
reader = PdfReader('example.pdf')
8
text = page.extract_text()
print(text)
6
reader = PdfReader('example.pdf')
5

print(len(reader.pages))
8
reader = PdfReader('example.pdf')
2 PyPDF20

text = page.extract_text()
print(text)
8
print(len(reader.pages))
2# importing required modules0 # importing required modules1

PyPDF25

print(len(reader.pages))
8PyPDF27
reader = PdfReader('example.pdf')
2# importing required modules5

reader = PdfReader('example.pdf')
7
page = reader.pages[0]
2

đầu ra

Trích xuất văn bản python

 

Phần kết luận

Chúng tôi đã thấy hai thư viện Python, PyPDF và PyMuPDF, có thể trích xuất văn bản từ tệp PDF. Nhận xét về thư viện ưa thích của bạn từ hai thư viện trên