Я ищу бесплатную программу или скрипт, который может принимать путь к папке в качестве входных данных и выводить количество слов в каждом файле PDF, расположенном в папке и ее подпапках. Он должен работать на Windows 7 SP1 x64 Ultimate и быть бесплатным.
Установите Python2.7 для Windows отсюда — установите PyPDF2 и используйте скрипт с такой функцией, как:
import PyPDF2 as ppdf
from os.path import walk, join, splitext
import sys
def getPDFWordCount(path):
word_count = 0
# Load PDF into pyPDF
pdf = ppdf.PdfFileReader(file(path, "rb"))
# Iterate pages
for i in range(0, pdf.getNumPages()):
# Extract text from page and add to content
content = pdf.getPage(i).extractText()
# Collapse whitespace and count
word_count += len(content.replace(u"\xa0", " ").strip().split())
return word_count
if __ name__ == "__main__":
for arg in sys.argv[1:]:
for (root, dirs, files) in walk(arg):
for filename in files:
(name, ext) = splitext(filename)
if ext.lower() == '.pdf':
filepath = join(root, filename)
print filepath, getPDFWordCount(filepath)
Взгляните на примеры os.path.walk и splitext, чтобы понять, как перебирать каталоги и как идентифицировать файлы PDF.
Это должно работать практически на любой платформе, даже на Windows , но не тестировалось ни на одной платформе. Если вам это нужно, вы можете установить интерфейс с графическим интерфейсом с помощью wxPython .