Làm cách nào để đọc nội dung của pdf trong python?

Python là một trong những ngôn ngữ lập trình được ưa thích nhất trên thế giới ngày nay. Chúng tôi có thể sử dụng nó để phân tích dữ liệu, nhưng dữ liệu không phải lúc nào cũng có sẵn ở định dạng bắt buộc. Trong những trường hợp như vậy, chúng ta có thể chuyển đổi định dạng của file từ pdf, jpg sang văn bản [. txt] để phân tích dữ liệu theo cách tốt hơn. Có nhiều thư viện có sẵn để thực hiện các nhiệm vụ như vậy

Chúng ta có thể sử dụng mô-đun PyPDF2 của Python để thực hiện nhiệm vụ chuyển đổi. tập tin pdf thành định dạng văn bản. Nhược điểm chính mà chúng ta có thể gặp phải khi sử dụng mô-đun này là sơ đồ mã hóa. Các tệp tài liệu PDF có thể chứa nhiều loại bảng mã như Unicode, ASCII, UTF-8, v.v. Do đó, chuyển đổi tệp PDF thành văn bản có thể dẫn đến mất dữ liệu do lược đồ mã hóa

Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách đọc nội dung của tệp PDF và lưu trữ dưới dạng văn bản [. txt] bằng phương pháp "Nhận dạng ký tự quang học"

Đầu tiên, chúng ta phải chuyển các trang của tệp tài liệu PDF thành hình ảnh, sau đó, chúng ta sẽ sử dụng OCR để đọc nội dung từ hình ảnh và lưu trữ vào văn bản [. txt] định dạng tập tin

Mô-đun bắt buộc

Chúng ta phải cài đặt các mô-đun sau bằng lệnh đã cho cho hướng dẫn này

[đối với điều này, người dùng nên có Microsoft Visual C++ 14. 0, Nhận nó với "Công cụ xây dựng cho Visual Studio". https. //Visual Studio. Microsoft. com/tải xuống/]

Phần 1

Phần đầu tiên sẽ xử lý việc chuyển đổi các trang PDF của tôi thành tệp hình ảnh. Mỗi trang của tệp PDF sẽ được lưu dưới dạng tệp hình ảnh và tên của hình ảnh sẽ được lưu dưới dạng

Phần 2

Phần thứ hai sẽ xử lý việc nhận dạng văn bản từ các tệp hình ảnh khi sắp xếp nó vào tệp văn bản trong ". txt" định dạng. Tại đây, chúng tôi sẽ xử lý các tệp hình ảnh để chuyển đổi chúng thành nội dung văn bản. Khi chúng ta có văn bản dưới dạng biến chuỗi, chúng ta có thể bắt đầu xử lý văn bản [. txt] tập tin. Chẳng hạn, trong nhiều tệp PFD, chúng ta có thể thấy rằng khi một dòng hoàn thành, nhưng từ cuối cùng không thể được viết hoàn toàn trong cùng một dòng, khi đó, dấu gạch nối sẽ được thêm vào cuối và từ đó được tiếp tục ở dòng tiếp theo. Ví dụ

Đối với những từ như vậy, chúng tôi sẽ thực hiện tiền xử lý cơ bản để chuyển đổi dấu gạch ngang và dòng sau thành một từ đầy đủ. Khi chúng tôi hoàn tất quá trình tiền xử lý, văn bản này sẽ được sắp xếp trong một tệp văn bản riêng

Mã số

đầu ra

Nhập tệp PDF

Xuất tệp văn bản

Như chúng ta có thể thấy, các trang của tệp PDF được chuyển đổi thành hình ảnh như thế nào. Sau đó, những hình ảnh đó đã được đọc và nội dung của chúng được ghi vào một tệp văn bản

PDF là một cách phổ biến để chia sẻ văn bản. PDF là viết tắt của Định dạng Tài liệu Di động và sử dụng. phần mở rộng tệp pdf. Nó được tạo ra vào đầu những năm 1990 bởi Adobe Systems

Đọc tài liệu PDF bằng python có thể giúp bạn tự động hóa nhiều tác vụ

Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách trích xuất văn bản từ tệp PDF bằng Python

Bắt đầu nào

Đọc và trích xuất văn bản từ tệp PDF bằng Python

Với mục đích của hướng dẫn này, chúng tôi đang tạo một tệp PDF mẫu có 2 trang. Bạn có thể làm như vậy bằng bất kỳ trình xử lý Word nào như Microsoft Word hoặc Google Docs và lưu tệp dưới dạng PDF

Văn bản trên trang 1

Hello World. 
This is a sample PDF with 2 pages. 
This is the first page. 

Văn bản ở trang 2

This is the text on Page 2. 

Sử dụng PyPDF2 để trích xuất văn bản PDF

Bạn có thể sử dụng PyPDF2 để trích xuất văn bản từ PDF. Hãy xem nó hoạt động như thế nào

1. Cài đặt gói

Để cài đặt PyPDF2 trên hệ thống của bạn, hãy nhập lệnh sau trên thiết bị đầu cuối của bạn. Bạn có thể đọc thêm về trình quản lý gói pip

pip install pypdf2

pypdf

2. Nhập PyPDF2

Mở sổ ghi chép python mới và bắt đầu nhập PyPDF2

import PyPDF2

3. Mở PDF ở chế độ đọc-nhị phân

Bắt đầu với việc mở tệp PDF ở chế độ đọc nhị phân bằng dòng mã sau

pdf = open['sample_pdf.pdf', 'rb']

Thao tác này sẽ tạo một đối tượng PdfFileReader cho tệp PDF của chúng ta và lưu nó vào biến 'pdf'

4. Sử dụng PyPDF2. PdfFileReader[] để đọc văn bản

Bây giờ bạn có thể sử dụng phương thức PdfFileReader[] từ PyPDF2 để đọc tệp

pdfReader = PyPDF2.PdfFileReader[pdf]

Để lấy văn bản từ trang đầu tiên của PDF, hãy sử dụng các dòng mã sau

page_one = pdfReader.getPage[0]
print[page_one.extractText[]]

Chúng tôi nhận được đầu ra như

Hello World. 
!This is a sample PDF with 2 pages. !This is the first page. !

Process finished with exit code 0

Ở đây chúng tôi đã sử dụng phương thức getPage để lưu trữ trang dưới dạng một đối tượng. Sau đó, chúng tôi đã sử dụng phương thức extractText[] để lấy văn bản từ đối tượng trang

Văn bản chúng tôi nhận được có kiểu String

Tương tự để lấy trang thứ hai từ việc sử dụng PDF

________số 8

Chúng tôi nhận được đầu ra như

This is the text on Page 2. 

Mã hoàn chỉnh để đọc văn bản PDF bằng PyPDF2

Mã hoàn chỉnh từ phần này được đưa ra dưới đây

This is the text on Page 2. 
0

Nếu bạn để ý, định dạng của trang đầu tiên hơi sai ở đầu ra ở trên. Điều này là do PyPDF2 không hiệu quả lắm khi đọc các tệp PDF

May mắn thay, Python có giải pháp thay thế tốt hơn cho PyPDF2. Chúng ta sẽ xem xét điều đó tiếp theo

Sử dụng PDFplumber để trích xuất văn bản

PDFplumber là một công cụ khác có thể trích xuất văn bản từ PDF. Nó mạnh hơn so với PyPDF2

1. Cài đặt gói

Hãy bắt đầu cài đặt PDFplumber

This is the text on Page 2. 
1

thợ sửa ống nước

2. Nhập pdfplumber

Bắt đầu với việc nhập PDFplumber bằng dòng mã sau

This is the text on Page 2. 
2

3. Sử dụng PDFplumber để đọc pdf

Bạn có thể bắt đầu đọc các tệp PDF bằng PDFplumber với đoạn mã sau

This is the text on Page 2. 
3

Điều này sẽ nhận được văn bản từ trang đầu tiên của PDF của chúng tôi. Đầu ra đến như

This is the text on Page 2. 
4

Bạn có thể so sánh điều này với đầu ra của PyPDF2 và xem PDFplumber tốt hơn như thế nào khi định dạng

PDFplumber cũng cung cấp các tùy chọn để lấy thông tin khác từ PDF

Ví dụ: bạn có thể sử dụng. page_number để lấy số trang

This is the text on Page 2. 
5

đầu ra

This is the text on Page 2. 
6

Để tìm hiểu thêm về các phương pháp trong PDFPlumber, hãy tham khảo tài liệu chính thức của nó

Phần kết luận

Hướng dẫn này là về đọc văn bản từ PDF. Chúng tôi đã xem xét hai công cụ khác nhau và xem công cụ này tốt hơn công cụ kia như thế nào

Bây giờ bạn đã biết cách đọc văn bản từ PDF, bạn nên đọc hướng dẫn của chúng tôi về mã thông báo để bắt đầu với Xử lý ngôn ngữ tự nhiên

Làm cách nào để trích xuất nội dung từ PDF bằng Python?

PyPDF2 [để chuyển đổi các tệp PDF dựa trên văn bản, đơn giản thành văn bản mà Python có thể đọc được] textract [để chuyển đổi các tệp PDF được quét, không tầm thường thành văn bản mà Python có thể đọc được] .
Bước 1. Nhập tất cả các thư viện. nhập PyPDF2. .
Bước 2. Đọc tệp PDF. .
Bước 3. Chuyển văn bản thành từ khóa

Chúng tôi có thể đọc dữ liệu từ PDF bằng Python không?

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ù gói này 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.

Cách dễ nhất để trích xuất văn bản từ PDF bằng Python là gì?

Công cụ chúng tôi đang sử dụng trong hướng dẫn này là PDF Plumber, một gói mã nguồn mở của python, rất tuyệt vời, đơn giản và mạnh mẽ. .
Nhập mô-đun của bạn. pip cài đặt pdfplumber -qimport pdfplumber. .
open['đường dẫn/đến/thư mục'].
trang[ ].
trích_văn[]

Chủ Đề