Hitung jumlah kata dalam file PDF

66

Bagaimana saya bisa mendapatkan jumlah kata dari file PDF? Saya pikir sebagian besar file pdf yang saya ingin dapatkan jumlah kata totalnya memiliki lapisan teks, jadi saya tidak perlu OCR.

Tugas itu muncul dari mencari beberapa makalah ilmiah dengan ukuran yang diketahui, misalnya 15.000 kata. Sebagian besar makalah moders diterbitkan dalam format pdf

osgx
sumber

Jawaban:

90

Jawaban cepat:

pdftotext myfile.pdf - | wc -w

Jawaban panjang:

Jika di Unix, Anda dapat menggunakan pdftotext:

dan kemudian lakukan penghitungan kata dalam file yang dihasilkan. Jika di Unix, Anda dapat menggunakan:

wc -w converted-pdf.txt

untuk mendapatkan jumlah kata.

Juga, lihat komentar oleh frabjous - pada dasarnya, Anda dapat melakukannya dalam satu langkah dengan memipipkan ke stdoutfile sementara:

pdftotext myfile.pdf - | wc -w
icyrock.com
sumber
10
Ini pdftotext: jangan lupa e. Dan Anda dapat menggunakan satu perintah: pdftotext myfile.pdf - | wc -w.
frabjous
1
@frabjous Terima kasih, perbarui jawabannya dengan saran!
icyrock.com
Perlu dicatat bahwa pdftotextini adalah bagian dari Xpdf yang juga tersedia untuk platform windows. Halaman unduhan Xpdf ada di sini: foolabs.com/xpdf/download.html . wcjuga dapat ditemukan, tetapi sebagai alternatif seseorang dapat menggunakan hampir semua pengolah kata seperti word atau LibreOffice Writer. Mereka juga menghitung kata-kata. (Untuk Penulis LibreOffice, buka File -> Properties -> Statistics)
amenthes
13

Ini adalah tugas yang sulit tidak mudah untuk diselesaikan. Jika Anda benar-benar menginginkan hasil yang pasti, salin paragraf demi paragraf untuk penampil PDF Anda ke dalam file teks dan periksa dengan wc -walat. Alasan mengapa tidak digunakan pdftotextdalam kasus itu adalah: rumus matematika mungkin juga masuk ke dalam output dan dianggap sebagai "kata-kata". (Atau Anda dapat mengedit output yang Anda dapatkan dari pdftotext). Alasan lain mengapa ini mungkin gagal adalah judul: "4.3.2 Foo Bar" dihitung sebagai tiga kata.

Jalan keluar hanya dengan menghitung kata-kata yang dimulai dengan karakter dari [A-Za-z]. Jadi apa yang biasanya saya lakukan adalah pendekatan dua langkah:

  1. dapatkan daftar kata uniq dan periksa apakah ada terlalu banyak kesalahan positif di dalamnya:

    pdftotext foo.pdf - | tr " " "\n" | sort | uniq | grep "^[A-Za-z]" > words

    Saya tidak menggunakan kamus di sini, karena beberapa kesalahan ejaan tidak akan dihitung sebagai kata-kata.

  2. Dapatkan daftar kata ini dan ambil dalam output pdftotext:

    pdftotext foo.pdf - | tr " " "\n" | grep -Ff words | wc -l

Saya tahu ini bisa dilakukan dalam satu liner, tapi kemudian saya tidak bisa dengan mudah melihat hasil filter dari langkah pertama. The -Fdapat membantu Anda seperti yang dinyatakan oleh komentar dari moi bawah (terima kasih).

matematika
sumber
1
Saya harus menggunakan grep -Ff words, karena grep mengeluh tentang "atau [^" yang tak tertandingi. Dari halaman manual: `` `-F, - fixed-string Menafsirkan POLA sebagai daftar string tetap, dipisahkan oleh baris baru, yang mana saja yang harus dicocokkan. (-F ditentukan oleh POSIX.) `` `
moi
10

Saya baru saja mencoba program gratis, Penerjemah Abacus . Anda dapat menarik dan melepas berbagai jenis file (termasuk PDF), dan muncul browser dengan laporan jumlah kata yang dapat dicetak untuk setiap dokumen. Ini bekerja dengan baik untukku. (Ini secara khusus dibuat untuk jumlah kata dan hanya 435 KB ... yaitu, bukan "aplikasi besar"). Abacus Penerjemah tidak berfungsi pada PDF 1.5 atau lebih baru.

Atau : Anda dapat Ctrl+ Auntuk memilih semua teks dalam Acrobat Reader dan kemudian menyalin-tempelnya ke dalam program seperti Microsoft Word (yang memiliki jumlah kata pada bilah status di bagian bawah layar).

Adam
sumber
Dalam (banyak?) PDF, Crl + A hanya memilih kata-kata di halaman saat ini, bukan keseluruhan dokumen. Abacus Penerjemah bekerja dengan sempurna, bagus!
Junuxx
3
Koreksi, Sempoa Penerjemah tidak berfungsi pada PDF 1.5 atau lebih baru.
Junuxx
+1 Ctrl + A di Adobe Reader bersama dengan WinMerge berfungsi dengan baik di Windows!
superjos
2

Cara mudah untuk melakukan ini jika Anda menggunakan Acrobat Pro adalah mengekspor PDF ke dokumen Microsoft Word dan kemudian lakukan penghitungan kata di Word. Atau, Anda dapat mengekspornya ke file teks biasa dan menggunakan utilitas penghitungan kata di editor teks pilihan Anda /. Saya baru saja menghitung kata pada artikel pdf menggunakan metode Word dan butuh waktu 30 detik untuk menyelesaikannya.

Semoga ini membantu.

Bruce Crawford
sumber
Saya dikonversi ke teks dan melakukan wc -w filename.txt. Itu berhasil. Terima kasih.
vijayst
1

Anda dapat menginstal OCRFeeder . Di dalamnya pilih File-> Impor PDF-> Secara otomatis mendeteksi dan mengenali semua halaman-> Ekspor ke ODT dan dokumen penulis libreoffice akan siap untuk jumlah kata atau fungsi RTF lain yang ingin Anda gunakan.

pengguna55926
sumber
0

Saya menemukan penghitung kata termasuk dalam alat abracadabra nyaman. Instalasi agak aneh.

Christoph
sumber
0

Anda dapat menggunakan JavaScript konsol Adobe Acrobat dengan kode berikut, yang saya ambil dari jawaban Dave Merchant di forums.adobe.com :

var cnt=0;
for (var p = 0; p < this.numPages; p++) cnt += getPageNumWords(p);
console.println("There are " + cnt + " words in this file.");

Diuji dengan Adobe Acrobat Pro DC 2018.011.20040 pada Windows 7 SP1 x64 Ultimate.


Untuk mengaktifkan Konsol JavaScript:

masukkan deskripsi gambar di sini

Untuk meluncurkan Jendela Konsol JavaScript:

CTRL + J

masukkan deskripsi gambar di sini

FYI, jika Anda memiliki sumber LaTeX yang sesuai dengan PDF: Penghitungan kata yang benar dari dokumen LaTeX .

Franck Dernoncourt
sumber
-1

Standar de facto, yang digunakan penerjemah sejak sekitar tahun 2000 adalah AnyCount Word Count Tool. Ia menghitung jumlah kata dalam PDF dan 37 format lainnya.

Vladimir
sumber
Vladimir, apakah ada referensi pihak ketiga (menyebutkan dalam buku, makalah, jurnal, ulasan pasar) bahwa jumlah uang banyak digunakan dalam pasar penghitungan kata dan terjemahan? Suka books.google.com/…
osgx
-3

Ctrl+ Shift+ Fmasukkan pencarian tingkat lanjut ketikkan kata dan itu akan menghitung berapa kali dalam dokumen. Ini bukan ilmu roket.

Johnny Boy
sumber
9
Saya pikir Anda telah salah memahami pertanyaan ... 'jumlah kata' biasanya mengacu pada jumlah total kata dalam dokumen, daripada jumlah kata tertentu ... dan juga, saya pikir akan lebih baik jika Anda untuk menentukan program mana yang Anda bicarakan - tidak semua pembaca PDF memiliki fungsi yang sama atau menggunakan cara pintas keyboard yang sama.
evilsoup
Anda mungkin belum menjawab jawaban OP tetapi pos Anda tentu membantu saya. Terima kasih. : D
mahela007