|
0 / 0 / 0
Регистрация: 15.10.2016
Сообщений: 91
|
||||||||||||||||||||||||||
Как посчитать количество страниц в PDF-файлах26.05.2017, 13:55. Показов 56210. Ответов 12
Метки нет (Все метки)
Мне необходимо посчитать количество страниц в PDF-файлах (в данной дирректории и во всех вложениях) и количество этих PDF-файлов. Количество PDF-файлов - любое, количество вложенных папок - любое.
Рабочий код для подсчета количества PDF-файлов:
Нашел код на др языках программирования, может кто-то сможет переписать эти варианты на CMD/BAT? Вот что смог найти в интернете Вариант 1: взял здесь:
Вариант 2: взял здесь: http://forum.rudtp.ru/threads/... pdf.12466/ %PDF-1.5 %вгПУ 109199 0 obj <</Linearized 1/L 9142108/O 109203/E 52524/N 1236/T 9126252/H [ 2754 12723]>> endobj ------------------------ Вариант 3: взял здесь: http://interestabout.ucoz.ru/blog/2011-04-19-103
и здесь же указали измененный вариант кода:
Вариант 4: взял здесь: https://www.kobzarev.com/progr... -document/
0
|
||||||||||||||||||||||||||
| 26.05.2017, 13:55 | |
|
Ответы с готовыми решениями:
12
Посчитать количество строк в файлах папки
|
|
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
|
||||||
| 26.05.2017, 15:01 | ||||||
|
берете отсель бесплатный pdftk.exe для windows и с помощью этого, находите что надо
1
|
||||||
|
0 / 0 / 0
Регистрация: 15.10.2016
Сообщений: 91
|
|
| 26.05.2017, 21:44 [ТС] | |
|
по одному файлу (жестко указанному файлу) считает классно, а как сделать, чтобы он посчитал страницы во всех PDF-файлах в данной папке и во вложенных? Количество PDF-файлов рандомное.
0
|
|
|
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
|
|||||||
| 26.05.2017, 22:54 | |||||||
Сообщение было отмечено se_arts как решение
Решение
2
|
|||||||
|
0 / 0 / 0
Регистрация: 15.10.2016
Сообщений: 91
|
|
| 26.05.2017, 23:28 [ТС] | |
|
alpap, огромное спасибо, все круто работает, считает во всех вложениях.
0
|
|
|
0 / 0 / 0
Регистрация: 15.10.2016
Сообщений: 91
|
||||||
| 30.05.2017, 07:00 [ТС] | ||||||
|
Появилась проблема, есть PDF-файлы, в которых не считается количество страниц или определяется неправильно: пишет "Отсутствующий оперетор" или "Ошибка деления на ноль". Хотя утилита PdftkXp (входит в состав Pdftk), во всех файлах определяет правильно количество страниц (если вручную закидывать в нее файлы).
Почему данный батник работает не корректно и как можно исправить ситуацию? Проблемные PDF-файлы прикрепил. И, второй вопрос (менее важный), батник безумно медленно считает, если PDF-файлов штук 30-40, подсчет может длиться около 5-7 минут. Можно ли ускорить подсчет?
0
|
||||||
|
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
|
||||||
| 30.05.2017, 09:02 | ||||||
|
se_arts,
ограничил вывод, не знаю стало ли шустрее, например у меня по всему диску С: Кликните здесь для просмотра всего текста
Старт поиск: 8:53:41,87 Стoп поиск: 8:54:12,23 Старт запись: 8:54:12,23 Всего страниц во всех файлах PDF диска C: - 608 Стоп запись: 8:54:12,23 Измененный код (в принципе изменения только в строке 4, добавлено find "NumberOfPages")
быстрее, конечно, работать в папке, без ключа /s в dir /a-d/b/s, а еще быстрее использовать для поиска и перебора файлов pdf не cmd, например PowerShell или js, да все кроме cmd.
0
|
||||||
|
0 / 0 / 0
Регистрация: 15.10.2016
Сообщений: 91
|
|
| 01.06.2017, 16:39 [ТС] | |
|
В таком варианте: dump_data_annots^|find "NumberOfPages" батник перестал работать, окно CMD запускается и сразу пропадает, т.е. моргает (такое у меня было, когда указывал неправильные команды или параметры).
На сайте программы PDFtk: http://https://www.pdflabs.com... -man-page/ нет параметра: NumberOfPages. Видимо, из-за него батник перестал работает. По времени подсчета: очень долго открывает файлы большого объема - 90-200МБ, даже файлов 5-6 может считать около минуты. Продолжаю тестить.
0
|
|
|
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
|
|||||||
| 01.06.2017, 23:25 | |||||||
0
|
|||||||
|
0 / 0 / 0
Регистрация: 15.10.2016
Сообщений: 91
|
||||||
| 02.06.2017, 11:33 [ТС] | ||||||
|
ert.pdf
Кликните здесь для просмотра всего текста
NumberOfPages: 15
--- AnnotSubtype: Link AnnotRect: 266.724 643.764 519.323 587.606 AnnotPageNumber: 3 --- AnnotSubtype: Link AnnotRect: 266.724 583.765 519.323 525.811 AnnotPageNumber: 3 --- AnnotSubtype: Link AnnotRect: 266.724 524.096 519.323 467.559 AnnotPageNumber: 3 --- AnnotSubtype: Link AnnotRect: 268 465.225 519.323 418.236 AnnotPageNumber: 3 --- AnnotSubtype: Link AnnotRect: 268 416.611 519.323 360.835 AnnotPageNumber: 3 --- AnnotSubtype: Link AnnotRect: 266.724 359.209 519.323 301.307 AnnotPageNumber: 3 --- AnnotSubtype: Link AnnotRect: 266.724 299.682 519.323 243.197 AnnotPageNumber: 3 --- AnnotSubtype: Link AnnotRect: 266.724 241.571 519.323 185.087 AnnotPageNumber: 3 --- AnnotSubtype: Link AnnotRect: 266.724 183.461 519.323 125.559 AnnotPageNumber: 3 --- AnnotSubtype: Link AnnotRect: 266.724 124.05 519.323 77.0612 AnnotPageNumber: 3 --- AnnotSubtype: Link AnnotRect: 218.301 126.089 378.391 77.3694 AnnotPageNumber: 4 --- AnnotSubtype: Link AnnotRect: 217.555 539.948 377.645 491.228 AnnotPageNumber: 6 --- AnnotSubtype: Link AnnotRect: 217.555 126.09 377.645 77.3701 AnnotPageNumber: 7 --- AnnotSubtype: Link AnnotRect: 217.517 126.09 377.607 77.3701 AnnotPageNumber: 8 --- AnnotSubtype: Link AnnotRect: 218.156 126.089 378.246 77.3694 AnnotPageNumber: 9 --- AnnotSubtype: Link AnnotRect: 217.631 121.447 377.721 72.7266 AnnotPageNumber: 10 --- AnnotSubtype: Link AnnotRect: 221.136 126.09 381.226 77.3701 AnnotPageNumber: 11 --- AnnotSubtype: Link AnnotRect: 217.517 126.09 377.607 77.3701 AnnotPageNumber: 12 --- AnnotSubtype: Link AnnotRect: 217.593 126.09 377.683 77.3701 AnnotPageNumber: 13 --- AnnotSubtype: Link AnnotRect: 181.616 356.331 413.659 307.611 AnnotPageNumber: 14 0001.pdf Кликните здесь для просмотра всего текста
NumberOfPages: 12
--- AnnotSubtype: Link AnnotRect: 344.65 933.65 437.5 944.1 AnnotPageNumber: 1 AnnotActionSubtype: URI AnnotActionURI: http://www.lelchitsy.by AnnotActionIsMap: false --- AnnotSubtype: Link AnnotRect: 669.35 1068.85 727.9 1075.3 AnnotPageNumber: 2 AnnotActionSubtype: URI AnnotActionURI: http://www.lelchitsy.by AnnotActionIsMap: false --- AnnotSubtype: Link AnnotRect: 3.6 1068.85 61.9 1075.3 AnnotPageNumber: 3 AnnotActionSubtype: URI AnnotActionURI: http://www.lelchitsy.by AnnotActionIsMap: false --- AnnotSubtype: Link AnnotRect: 669.35 1068.85 727.9 1075.3 AnnotPageNumber: 4 AnnotActionSubtype: URI AnnotActionURI: http://www.lelchitsy.by AnnotActionIsMap: false --- AnnotSubtype: Link AnnotRect: 3.6 1068.85 61.9 1075.3 AnnotPageNumber: 5 AnnotActionSubtype: URI AnnotActionURI: http://www.lelchitsy.by AnnotActionIsMap: false --- AnnotSubtype: Link AnnotRect: 669.5 1067.35 728 1073.8 AnnotPageNumber: 6 AnnotActionSubtype: URI AnnotActionURI: http://www.lelchitsv.bv AnnotActionIsMap: false --- AnnotSubtype: Link AnnotRect: 3.6 1068.85 61.9 1075.3 AnnotPageNumber: 7 AnnotActionSubtype: URI AnnotActionURI: http://www.lelchitsy.by AnnotActionIsMap: false --- AnnotSubtype: Link AnnotRect: 19.85 896.8 104.15 903.75 AnnotPageNumber: 8 AnnotActionSubtype: URI AnnotActionURI: http://WWW.ZERN0M0L.BY AnnotActionIsMap: false --- AnnotSubtype: Link AnnotRect: 171 752.3 285.4 760.75 AnnotPageNumber: 8 --- AnnotSubtype: Link AnnotRect: 171 743.45 285.4 751.9 AnnotPageNumber: 8 --- AnnotSubtype: Link AnnotRect: 170.45 734.45 285.6 742.9 AnnotPageNumber: 8 --- AnnotSubtype: Link AnnotRect: 170.1 725.45 285.6 733.9 AnnotPageNumber: 8 --- AnnotSubtype: Link AnnotRect: 169.7 716.45 285.4 724.9 AnnotPageNumber: 8 --- AnnotSubtype: Link AnnotRect: 3.6 1068.85 61.9 1075.3 AnnotPageNumber: 9 AnnotActionSubtype: URI AnnotActionURI: http://www.lelchitsy.by AnnotActionIsMap: false --- AnnotSubtype: Link AnnotRect: 669.35 1068.85 727.9 1075.3 AnnotPageNumber: 10 AnnotActionSubtype: URI AnnotActionURI: http://www.lelchitsy.by AnnotActionIsMap: false --- AnnotSubtype: Link AnnotRect: 287.65 34.5 355.4 40.95 AnnotPageNumber: 12 AnnotActionSubtype: URI AnnotActionURI: http://www.lelchitsy.by AnnotActionIsMap: false --- AnnotSubtype: Link AnnotRect: 435.2 34.5 519.95 40.95 AnnotPageNumber: 12 AnnotActionSubtype: URI AnnotActionURI: mailto:gazeta-lel@mail.gomel.by AnnotActionIsMap: false При помощи данного кода
0
|
||||||
|
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
|
|
| 02.06.2017, 21:07 | |
|
se_arts,
вот результат работы именно с предоставленными выше файлами, у меня все отлично, может криво скопировали или что пропустили?
1
|
|
|
0 / 0 / 0
Регистрация: 15.10.2016
Сообщений: 91
|
||||||
| 02.06.2017, 22:04 [ТС] | ||||||
|
Буду разбираться, что пропустил или не так сделал.
Появилась мысль: записать данные из dump_data_annots в файл list1.txt. Далее открыть текстовый файл и посчитать все значения для NumberOfPages. Не получается правильно написать код для последнего for для подсчета в нем NumberOfPages. Мучаюсь и не могу понять, что не так делаю. Как правильно указать подсчет NumberOfPages в текстовом файле list1.txt? Запись в текстовый файл происходит достаточно быстро - возможно, повысится скорость подсчета.
0
|
||||||
|
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
|
|
| 02.06.2017, 22:16 | |
|
se_arts,
что вы творите, ума не приложу, мой код в п7 именно это делает, а именно подсчет всех выводов NumberOfPages команды pdftk.exe "file.pdf" dump_data_annots для всех файлов заданной директории, а на скорость (говорил выше) сильно влияет использование cmd, на другом языке будет быстрее.
0
|
|
| 02.06.2017, 22:16 | |
|
Помогаю со студенческими работами здесь
13
Пакетная конвертация PDF в DOC и печать любых документов на PDF-принтере Bat печати txt в pdf через pdf принтер
Выдача сведений о виртуальной памяти(Размер виртуальных страниц, число выгруженных страниц) Вывод количества строк в файлах, содержащих заданные строки поиска Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/
O1rJuneU_ls
https:/ / vkvideo. ru/ video-115721503_456239114
|
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ВВЕДЕНИЕ
Введу сокращения:
аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
|
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi
ветка по-частям.
коммит Create переделка под биомассу. txt
вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
|
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ *
Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях.
Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её.
Последовательность действий:. . .
|
|
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
|
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение.
И на уровне агентов добавится между грибами или бактериями взаимодействий.
До того я пробовал подход через многомерные массивы,. . .
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|