Có pdf chuyển đổi văn bản tốt hơn pdftotext không?


63

Tôi đang sử dụng pdftotext (một phần của poppler-utils) để chuyển đổi tài liệu PDF thành văn bản. Nó hoạt động, đối với hầu hết các phần, nhưng một điều tôi muốn nó là chèn các dòng trống giữa các đoạn riêng biệt thay vì trộn chúng lại với nhau.

Có cách nào để có được pdftotext để làm điều này? Và nếu không, có một tiện ích pdf thành văn bản nào có thể làm điều này không?


8
Trong tiêu đề bạn nói "pdftotext" (là một phần của poppler-utils) và trong cơ thể bạn nói "pdt2text" (mà tôi không biết). Mà bạn đang đề cập đến?
enzotib

câu hỏi tương tự PDF to audio software for academic papers? softwarerecs.stackexchange.com/questions/10640/
Khăn

Câu trả lời:


25

Bạn có thể thử ebook-converttừ Calibre.

Nếu có bất cứ điều gì, tôi sẽ nói nó sai theo hướng khác: quá nhiều ngắt dòng.

Một điều nữa tôi chắc chắn sẽ xem xét là chuyển đổi sang HTML bằng pdfreflow , sau đó chuyển đổi HTML sang TXT.


Lưu ý: ebook-convertkhông thể chuyển đổi bố cục nhiều cột, nó hợp nhất các cột thành một cột. Đối với bố trí pdftotextnhiều cột tạo ra đầu ra tốt hơn nhiều. Các giới hạn khác được mô tả tại Manual.calibre-ebook.com/conversion.html#convert-pdf-document .
asmaier

117

Nếu bạn đang sử dụng pdftotext, bạn có thể sử dụng -layoutcờ để giữ nguyên bố cục của văn bản trên các trang trong tệp pdf đầu vào của bạn:

pdftotext -layout input.pdf output.txt

6
Ngoài ra còn có -table cho bố trí bảng cụ thể, hoạt động tuyệt vời.
P.Windridge

3
@ P.Windridge, tùy chọn bảng này ở đâu? Tôi không thể tìm thấy nó trên phiên bản 0.48.0 từ poppler-utils trong Ubuntu 17.04
gozzilli

2
@gozzilli Đó là cách cũ. Pdftotext mới nhất là v4.00, có sẵn trong tarball công cụ Xpdf tại đây .
Adrian

2
@gozzilli Các phiên bản bắt đầu bằng 0. chỉ ra rằng đó là nhánh Popplers của mã gốc của Xpdf. Họ bắt đầu số phiên bản của họ khi họ phân nhánh mã. Cả hai nhóm hiện xuất hiện để duy trì các phiên bản riêng biệt của các công cụ PDF này.
Andrew

1
@VivekSable đó là các điểm (pixel) ở mức được chỉ định -r(độ phân giải, mặc định 72 dpi)
vstepaniuk

14

Là một fan hâm mộ của nguồn mở (và tự động hóa), tôi ghét phải nói điều này, nhưng kết quả tốt nhất tôi vừa có (trên một tệp PDF khá lớn, phức tạp) là mở nó trong Adobe Reader, sau đó chọn File | Save As Text.

(Tôi đang xử lý trước cho các thử nghiệm phân tích văn bản, không phải là người đọc, nhưng tôi nghĩ rằng lựa chọn đầu tiên và thứ hai của tôi sẽ giống nhau.)

Tôi đã so sánh đầu ra cạnh nhau. Lựa chọn thứ hai của tôi là chuyển đổi ebook.

Adobe : còn lại trong FF để ngắt trang, còn lại trong số trang, chưa chuyển tiêu đề / đoạn thành dòng đơn, nhưng nó có dấu gạch nối cố định. Rác bị ẩn trong PDF không nhận được đầu ra. Chính xác có các chữ viết hoa lớn khi bắt đầu các phần, ví dụ "The", không phải "T he" hay thậm chí "T he".

ebook-convert : Còn lại trong số trang và một số rác ẩn trong đầu trang / chân trang (nhưng không có FF). Chuyển đổi hầu hết các đoạn thành dòng đơn. Những cái nó bỏ lỡ mặc dù cách đôi! Đạn không phải luôn luôn phù hợp với văn bản. Chính xác có "The" ở đầu chương.

pdftotext (không có --layout) : Không tệ, đạn xếp hàng, nhưng tiếng ồn của tiêu đề / chân trang. FF đang ở đó. Hyphens loại bỏ. Tệ nhất khi bắt đầu chương lớn chữ: "T \ n \ nhe".

pdftotext (với --layout) : Tương tự, nhưng nhiều vết lõm hơn. "T he" để bắt đầu chương.

pdftohtml >> pdfreflow >> htmltotext : Nó đã xóa số trang, nhưng vẫn còn rác trong tiêu đề / chân trang. "T he" để bắt đầu chương. Hyphens loại bỏ. (Nó sử dụng nhiều dòng trên mỗi đoạn, nhưng chúng không phải là ngắt dòng giống như trong các phiên bản khác!)


Acrobat reader 9 trên linux đã tạo ra các từ bị đè bẹp trong trường hợp của tôi. ebook-convertlàm việc tốt
ov7a

Chúng tôi thực sự cần một ứng dụng AI cho điều đó, nó có vẻ hoàn hảo cho loại nhiệm vụ đó: có ai biết không?
JinSnow

1
Trình đọc Adobe là miễn phí, nhưng ... chỉ để đọc pdf. Đối với những thứ khác bạn cần phải trả tiền (thuê bao hàng tháng). (Pdf thành văn bản được giới hạn trong một vài trang). Văn bản Pdfto (hoặc xpdf trên win) là hoàn hảo cho nhu cầu của tôi.
JinSnow

Đối với dữ liệu dạng bảng, giờ đây tốt nhất là sử dụng công tắc -table "pdftotext -table file_name.pdf output_name.txt"
Thom Ives

5

Nếu bạn có tài khoản Google, bạn có thể sử dụng Google Docs để tải lên tệp PDF và chuyển đổi nó thành văn bản có thể chỉnh sửa.


1

Tôi cũng đã thử pypdf và so sánh nó với pdftotext trên hai tài liệu. Nó có nhiều ngắt dòng hơn và chia một số tên phần (TÀI LIỆU THAM KHẢO là TÀI LIỆU THAM KHẢO).

pdf2txt đã xuất rác hoàn chỉnh.

Tôi thường sử dụng pdfBox (java) nếu pdftotext bắt vít đầu ra. Bạn có thể thử nó.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.