Форум программистов, компьютерный форум, киберфорум
Системный софт
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
 Аватар для Novosedoff
48 / 45 / 7
Регистрация: 17.01.2021
Сообщений: 354
Windows

Программа для каталогизации электронных книжек

07.04.2022, 23:09. Показов 939. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приветствую.

Задачка выглядит примерно так. У меня время от времени накапливаются электронные книжки в pdf и djvu файлах (названия файлов и в латинице, и на кириллице). Накапливаются порой сотнями, внутри нескольких десятков каталогов. Просто взять их и удалить - жалко, потому что потом могу не вспомнить автора и название какой-то книги.

Есть конечно самый доступный способ для каталогизации через использование системной команды dir /s * > list.txt
Однако недостатком такого способа является то, что в одном выходном файле смешиваются как и названия самих файлов, так и чисто системная информация, типа дат создания файлов и названий каталогов, в которых они лежат.
Вот если бы команда dir умела ещё парсить выходную информацию, так чтоб удалять всё лишнее и отделять в названии файлов, скажем, авторов от названий книг - это было бы здорово.

Порекомендуйте фриварные решения под Windows, которые умеют это делать.

Заранее благодарю.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.04.2022, 23:09
Ответы с готовыми решениями:

Программа для каталогизации документов(док., пдф)
Подскажите Программу для каталогизации документов(doc., pdf) чтобы свести все в единую базу. Распределить по отделам, проектам и т.д. ...

Программа для создания электронных книг
Привет, подскажите бесплтную софтину, для создания электронных книг с возможностью вставлять в книгу музыку, чтобы пока читаешь играла...

Программа учёта и каталогизации книг
Исходные данные по проекту: автор, название, год издания, категория книги, дата постановки на учёт, инвентарный номер, срок эксплуатации,...

13
5042 / 1069 / 149
Регистрация: 29.01.2013
Сообщений: 6,248
08.04.2022, 10:33
Novosedoff, PowerShell
0
6994 / 2880 / 1108
Регистрация: 06.06.2017
Сообщений: 9,775
08.04.2022, 11:10
Novosedoff, создание списка не является каталогизацией, не путайте.
Вам нужно избавиться от файлов, сохранив информацию по ним? Так?
Метаданных нет? Всё в названиях?
Впрочем, если и есть, то даже Directory Lister Pro/Enterprise, Directory List & Print и т. п. с метаданными djvu точно не помогут.

dir в сухом виде ничего не даст, парсинг достигается обработкой сценарием/скриптом либо заменой с регекспами в текстовом редакторе.
ТЗ полностью составьте. С шаблоном исходных и выходных имён, разделителем, местом поиска, необходимостью в рекурсии и т. д.
1
5042 / 1069 / 149
Регистрация: 29.01.2013
Сообщений: 6,248
08.04.2022, 11:25
Вот да, не хотел сразу это писать, но дело вы затеяли крайне трудоёмкое и в чём-то даже не выполнимое. По крайней мере я в своё время не смог сделать вменяемый автоматизированный каталогизатор. Проблемы которые передо мной возникли:
1. В названии файла имя автора и название книги могут быть в любом виде, любом порядке и могут отсутствовать вовсе (у меня откуда-то набралась целая папка на 2,5Гб всяких boock[i] и BestCoockBoock).
2. Электронные книги крайне редко содержат хоть как-то заполненные метаданные.
3. Поиск дублей. даже не возвращаясь к п 1., Есть книги за авторством Михаила Фленова, а есть от Michail Flenov, или Mikail Flenou. А это всё - одна и та же книга. Даже издание одно и то же.
4. Распарсить текстовый слой в надежде вытянуть информацию об авторе, названии и издании возможно не всегда. У меня есть чудесная "Библия Delphi" за авторством как раз Flenou, именно так написано в метаданных, и вот она отсканирована. Да ещё и в высоком разрешении, без артефактов сканирования. И весит это чудо почти гиг. Так что если вы думали про OCR, то раздумайте назад.
0
6994 / 2880 / 1108
Регистрация: 06.06.2017
Сообщений: 9,775
08.04.2022, 11:34
Цитата Сообщение от Alli_Lupin Посмотреть сообщение
но дело вы затеяли крайне трудоёмкое и в чём-то даже не выполнимое.
Не спешите с выводами. Коли авторство и название книги заявлено в именах, то при правильном разделителе всё решаемо довольно просто.
0
5042 / 1069 / 149
Регистрация: 29.01.2013
Сообщений: 6,248
08.04.2022, 11:37
FlasherX, смотрите пункт первый моих стенаний о двух неделях разработки в никуда)
0
6994 / 2880 / 1108
Регистрация: 06.06.2017
Сообщений: 9,775
08.04.2022, 12:15
Alli_Lupin, второй раз? Зачем. Я указал на конкретное условие для достижения цели.
0
08.04.2022, 12:22

Не по теме:

ладно, не буду в полемику

0
 Аватар для Novosedoff
48 / 45 / 7
Регистрация: 17.01.2021
Сообщений: 354
08.04.2022, 15:02  [ТС]
Цитата Сообщение от Alli_Lupin Посмотреть сообщение
Вот да, не хотел сразу это писать, но дело вы затеяли крайне трудоёмкое и в чём-то даже не выполнимое.
Это было б так, если б источников для скачивания книг в Интернете было б очень много. Но в моём случае задача облегчается тем, что более половины книг в списке было скачано с Libgen, у которого унифицированный подход к формированию имён всех файлов, доступных для скачивания. В имени файла всегда будут фигурировать Имена авторов и Название публикации, Год опубликования.

Цитата Сообщение от FlasherX Посмотреть сообщение
Не спешите с выводами. Коли авторство и название книги заявлено в именах, то при правильном разделителе всё решаемо довольно просто.
Даже ссылочку на пример такого списка дам (кириллические имена файлов в нём читаются в Юникод-16 и нормально открываются в том же Notepad++). Вот пример моего списка книжек по математике:
https://drive.google.com/file/... R_IGs/view

В выходном CSV либо TXT файле - 6 cтолбцов: 1) Авторы, 2) Название публикации, 3) Год издания, 4) Тематика публикации, 5) Формат файла (Pdf, djvu и тп), 6) Ссылка откуда скачано.

Тематику можно определить по имени системного каталога, в котором файл (в примере выше - MATHS). Первые 3 столбца при скачивании с libgen - из имени файла. Формат файла - из его расширения. Столбец 6) Ссылка - пусть пустует.

Если что-то невозможно определить из названия файла, то оставляем пустым с каким-нибудь маркером внутри (например, 5 звёздочек *****), чтобы поиском сразу же можно было найти все пустоты.
0
5042 / 1069 / 149
Регистрация: 29.01.2013
Сообщений: 6,248
08.04.2022, 15:06
Цитата Сообщение от Novosedoff Посмотреть сообщение
если б источников для скачивания книг в Интернете было б очень много
моя библиотека собиралась с CD\DVD, торрентов, форумов, варезников и винтов одногруппников) ни про какую унификацию там никто не говорил))
Но раз у вас с этим всё хорошо, то смотрите в сторону PS. Он не хуже линуксового шелла умеет парсить и преобразовывать.
0
 Аватар для Novosedoff
48 / 45 / 7
Регистрация: 17.01.2021
Сообщений: 354
08.04.2022, 15:18  [ТС]
Как отделить имя автора от названия книги в названии файла?
1) Очень часто по инициалам с точкой, но не всегда.
2) По длине: названия публикаций обычно длинее имён авторов (но не всегда)

Цитата Сообщение от Alli_Lupin Посмотреть сообщение
моя библиотека собиралась с CD\DVD, торрентов, форумов, варезников и винтов одногруппников) ни про какую унификацию там никто не говорил))
Но раз у вас с этим всё хорошо, то смотрите в сторону PS. Он не хуже линуксового шелла умеет парсить и преобразовывать.
Ну я рад за Вас, только у меня есть сильное подозрение, что такая задача уже кем-нибудь решалась, потому как в одних и тех же условиях живём, одно и то же скачиваем.

Цитата Сообщение от FlasherX Посмотреть сообщение
Метаданных нет? Всё в названиях?
Впрочем, если и есть, то даже Directory Lister Pro/Enterprise, Directory List & Print и т. п. с метаданными djvu точно не помогут.
Я, кстати, с открытостью воспринял бы советы относительно способов добавления метаданных к файлам-книжкам. А то добавлять мета-тэги к интересным мне картинкам я уже научился. А вот добавлять метатэги к книжкам (которых на порядок меньше) - ещё нет
0
6994 / 2880 / 1108
Регистрация: 06.06.2017
Сообщений: 9,775
08.04.2022, 17:51
Цитата Сообщение от Novosedoff Посмотреть сообщение
Вот пример моего списка книжек по математике:
Мешанина. Много файлов без названия, авторства и года. Авторы есть не только в начале, но в конце, в т. ч. в др. падежах и без инициалов. libgen встречается от силы в 15-20%. Нет общего шаблона для парсинга. Многое подвисает мёртвым грузом на этот случай.

Цитата Сообщение от Novosedoff Посмотреть сообщение
советы относительно способов добавления метаданных к файлам-книжкам.
Можно посмотреть в сторону Calibre (мануал). Для PDF есть cpdf и pdftk. Для офисных есть много всяких (например, MetadataTouch). Для djvu есть djvused и djvuxmlparser, но я их в таком контексте не использовал. Если не брать онлайн-редакторы, что-то можно тут поискать. Для epub есть несколько удобных редакторов.
А так можно вообще работать с потоками. Например, таким плагином можно любые файлы метить как душе угодно.
1
 Аватар для Novosedoff
48 / 45 / 7
Регистрация: 17.01.2021
Сообщений: 354
08.04.2022, 18:27  [ТС]
Цитата Сообщение от FlasherX Посмотреть сообщение
Мешанина. Много файлов без названия, авторства и года. Авторы есть не только в начале, но в конце, в т. ч. в др. падежах и без инициалов. libgen встречается от силы в 15-20%. Нет общего шаблона для парсинга. Многое подвисает мёртвым грузом на этот случай.
Я бы даже не возражал, если б где-то название публикации и имена авторов менялись местами. Либо если б часто оба поля оказывались пустыми, просто потому что не удалось ничего идентифицировать из названия файла (в этом случае никто не отменял труд ручками с моей стороны). Впрочем спасибо за комментарий и полезные ссылочки ниже. Calibre произвёл впечатление своей мощью (автоматический поиск и подгрузка данных из Интернет)
0
6994 / 2880 / 1108
Регистрация: 06.06.2017
Сообщений: 9,775
08.04.2022, 19:02
Цитата Сообщение от Novosedoff Посмотреть сообщение
если б где-то название публикации и имена авторов менялись местами
В именах файлов? Ну для этого есть куча ренеймеров и ФМ с ними. Делается сие с помощью регулярных выражений для файлов с соотв. шаблоном.
Т. е. сперва фильтруются файлы по заданному критерию, а потом уже производится переименование. При таком списке нужен индивидуальный подход.

Цитата Сообщение от Novosedoff Посмотреть сообщение
спасибо за комментарий и полезные ссылочки ниже.
Пожал'ста. )
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
08.04.2022, 19:02
Помогаю со студенческими работами здесь

Программа для сканирования электронных плат
Есть ли программы позволяющие отсканировать электронную плату с обоих сторон и вывести её схему? Задавайте вопросы в постах, а не в...

Программа для создания электронных учебников
Всем добрый день. На днях поступило предложение сделать программу в которой можно создавать электронный учебник(exe файл). Кто нибудь...

Программа для продажи электронных билетов - нужна литература
Добрый день уважаемые пользователи. Я хочу написать программу, которая будет осуществлять продажу электронных билетов, их подпись и...

Скрипт для каталогизации файлов
Приветствую! В написании batch-скриптов не шарю очень поверхностно (я б, конечно, прошарил, но задача срочная, нет времени разбираться). ...

Создание простой программы для каталогизации музыки
Насколько сложная задача для новичка - создание программы в Visual Studio для каталогизации музыки по 3-4 категориям, с возможностью...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru