Вы здесьПереименование fb2-файлов
Опубликовано ср, 09/07/2008 - 00:33 пользователем aka_SKIff
Простейшая программка для переименования файлов fb2 в соответствии с заданным шаблоном. Изменить тип файла с TXT на EXE. Думаю, разобраться будет несложно. Обо всех глюках и багах - пишем сюда. Альфа-тестирование. Автор - mz.Vandal
|
Вход на сайтПоиск по блогам и форумамUser menuПоследние комментарии
Океана RE:Подайте бедному копеечку на книжку с литреса... 2 часа
edvud RE:Прошу переформатировать, распознать, etc... 6 часов babajga RE:Отчаянная осень 1 день babajga RE:Сказки Сени Малины 1 день babajga RE:Сказки 1 день babajga RE:Мои четвероногие друзья 1 день Саша из Киева RE:Кто сможет раздобыть и оцифровать нужные мне книги? 1 день Isais RE:Древний Рим. Подборка книг 3 дня Isais RE:Семейственность в литературе 6 дней kopak RE:Таинственная личность админа Флибусты 1 неделя kopak RE:О группе Дятлова. О той самой, того самого... 1 неделя babajga RE:Ласси возвращается домой 1 неделя sem14 RE:Подборка о Первой Мировой 1 неделя Isais RE:удаление "двойников" 1 неделя Isais RE:Кармен Мола - Пурпурная сеть [litres] 3 недели Isais RE:Детство, опаленное войной (Вторая мировая 1939-1945 и ВОВ) 3 недели Isais RE:Катя Водянова - Дом и два жениха в придачу 4 недели Isais RE:Дмитрий Анатольевич Горчев - ЖЖ Дмитрия Горчева (2009–2010) 1 месяц Впечатления о книгах
Stager про Валин: Штурмуя Лапуту (Боевая фантастика, Героическая фантастика, Самиздат, сетевая литература)
26 02 Повествование окончательно стало бессвязным и немотивированным. Даже рояли кончились. Но забавно, местами увлекательно. Оценка: неплохо
Lan2292 про Nooby: Торговец (Городское фэнтези, Попаданцы, Самиздат, сетевая литература)
26 02 чЕЛОВЕК ПИСАЛ, ТРАТИЛ ВРЕМЯ, НО К СОЖАЛЕНИЮ НА ВЫХОДЕ ПОЛУЧИЛАСЬ ХРЕНЬ, А Я ЧЕСТНО ПЫТАЛАСЬ ПРОРВАТЬСЯ ЧЕРЕЗ СТРОЧКИ, НО УВЫ И АХ. Оценка: плохо
iggy71 про Маканин: Валечка Чекина (Современная проза)
25 02 Писатель намеревался, видимо, создать загадочный образ провинциалки, "в которой что-то есть", и типа все хотят с ней познакомиться поближе, и она такая себе любвеобильная, духовная и проч. Автор ей симпатизирует, но вот образ ……… Оценка: плохо
konst1 про Рубина: Окна [Авторский сборник] (Современная проза)
25 02 Вдруг Борис заметил: – Между прочим, знаешь ли ты, что еще совсем недавно, в XVIII веке, жители Корнуолла промышляли таким вот способом: в особо сильный шторм выносили на берег большие фонари и расставляли рядами там, ……… Оценка: отлично!
Дей про Господин следователь
25 02 Очень интересно. Детективная и, скажем так, бытовая линии отличные, любовная же не понравилась. Влюбился с первого взгляда, лучше её нет (это ещё даже не разговаривал с ней ни разу), вот эти китайские церемонии с ухаживаниями ………
Олег Макаров. про Капба: Как приручить дракона - 4 [СИ] (Альтернативная история, Киберпанк, Фэнтези, Попаданцы, Самиздат, сетевая литература)
24 02 Капба прекрасен как всегда. Четвёртый том не хуже (лучше!) предыдущих, хотя казалось бы куда ещё. Очень отличная книга. Оценка: отлично!
obivatel про Калинин: Вторая Отечественная [litres] (Альтернативная история, Боевая фантастика, Попаданцы)
24 02 Автор датэл: "если именно благодаря революционерам Россия потеряла шанс выйти из нее в качестве главного победителя". . Если пишешь что-то о периоде, не поленись узнать как оно было. Царя опрокинули крупнейшие промышленники ……… Оценка: плохо
mysevra про Себастьянович: Новая книга о сыроедении, или Почему коровы хищники (Здоровье)
24 02 Подход для таких ленивых как я - нет обязательных самостоятельных чисток. «Мягким тканям потребуется не менее 2 лет, а скелету - около 7.» Непонятно, есть ли это время. Оценка: отлично!
mysevra про Артюшкина: Голем [litres] (Детективная фантастика, Социальная фантастика, Научная фантастика)
24 02 Такой замечательный мир, отличный язык, но невыносимо неспешное развитие событий – кажется вот-вот случится что-то значимое, а нет, очередной проходной момент. Оценка: неплохо
Isais про Абдуллаев: Заговор в начале эры (Исторический детектив, Политический детектив)
24 02 Скучно, нудно, нехудожественно. Вместо живых картин -- картонные декорации, никто из персонажей не вызывает эмоций -- ни любви, ни ненависти, каждый абзац сопровождается таким же по размеру морализаторским поучением, высказанным ……… Оценка: плохо
Nevskaya про Сушков: «Ленинградское дело»: генеральная чистка колыбели революции (Документальная литература)
22 02 Бралась за книгу с трепетом, родная тема, Блокада, Ленинград и все такое... Прочла со стыдом, дочитывала только потому, что не умею бросать начатое. Вранье сплошное, откровенное, бесстыжее, запредельное. Уже много где на форумах ……… Оценка: нечитаемо
Belomor.canal про Акунин: На санях (Современная проза)
22 02 Лучшая, самая лучшая книга Семейной Саги Оценка: отлично! |
||||||
Комментарии
Re: Переименование fb2-файлов
Хм... Что значит "Заголовок сцеплен в одну строчку" ?
Дальше по теме ОС. Программа писалась под Винду. Сборки под Линь пока ещё не было даже пробной. Я так понимаю, все эти проблемы из-за чуткого отношения Линя к регистру букв. При сборке под Линь эти особенности будут учтены.
Насчёт лицензии не знаю, соглашение не читал, но теоретически - GPL :)
Re: Переименование fb2-файлов
Show me the code. (c) Linus Torvalds
Отв: Re: Переименование fb2-файлов
Ну, если книжка выгляди так:
<description>
<title-info>
<genre>adv_animal</genre>
<genre>home_pets</genre>
<author>
<first-name>Александр</first-name>
<last-name>Неманис</last-name>
</author>
<book-title>Картофельный пес</book-title>
<date></date>
<lang>ru</lang>
</title-info>
<document-info>
<author>
<first-name>TaKir</first-name>
<last-name></last-name>
</author>
<program-used>Fiction Book Designer, FB Editor v2.0</program-used>
<date value="2008-05-01">07.05.2008</date>
<src-url>http://www.rusf.ru/books/</src-url>
<id>4E7198-1C86-3B4D-A8B4-AFB8-ABB0-141B91</id>
<version>1.1</version>
<history>
<p>version 1.1 — TaKir — создание документа </p>
</history>
</document-info>
<custom-info info-type="general">Данное художественное произведение....</custom-info>
</description>
...
А, вот если так:
<description><title-info><genre>adv_animal</genre><genre>home_pets</genre><author><first-name>Александр</first-name><last-name>Неманис</last-name></author><book-title>Картофельный пес</book-title><date></date><lang>ru</lang></title-info><document-info><author><first-name>TaKir</first-name><last-name></last-name></author><program-used>Fiction Book Designer, FB Editor v2.0</program-used><date value="2008-05-01">07.05.2008</date><src-url>http://www.rusf.ru/books/</src-url><id>4E7198-1C86-3B4D-A8B4-AFB8-ABB0-141B91</id><version>1.1</version><history><p>version 1.1 — TaKir — создание документа </p></history></document-info><custom-info info-type="general">Данное художественное произведение....</custom-info></description>...
, то не работает.Отв: Re: Переименование fb2-файлов
Эт надо у разработчика спрашивать :) Похоже, это косяк парсера DOM-структуры. Но я могу и ошибаться :)
Re: Переименование fb2-файлов
Да будет вам GPL. Будет. Вот только сделаю более-менее рабочую версию. То, что есть, делалось буквально "на коленке". Как-то даже вдруг.
Поскольку я с сегодняшнего дня в отпуске, скорых обновлений не получится.
Кстати про линух. Попробую насторить лазаруса для сборки из-под винды. Поскольку дома линь ставить в лом, тестинг под линь возложим на aka_Skiff. :-)
Re: Переименование fb2-файлов
Думаю, Линь тут у многих есть :) Так что тестить будем все вместе :)
Re: Переименование fb2-файлов
Пока с кодировкой никаких проблем не обнаружено. Обработано порядка 250 файлов. Из них процентов 30 изначально были в 1251.
Но прога не хочет увидеть папку, если она "глубоко" запакована. Мне пришлось пару папок перенести в другое место, чтобы переименовать и перекодировать. Это лечится?
Re: Переименование fb2-файлов
Если в названии серии встречаются кавычки, переименование не происходит. Более того, программа прерывается и "неудобный" файл нужно или удалить из папки или переименовать.
Периодически (не могу проследить закономерность) выскакивают один-два файла полностью на "тарабарщине".
Отв: Re: Переименование fb2-файлов
Кстати, да - даже странно.
Отв: Переименование fb2-файлов
При указании шаблона вида %F %L\%S\%N %T на выходе получается фай с именем типа Терри ПратчеттПлоский мир31 Монстрячий взвод.fb2
То есть слеши в пути полностью игнорируются и все файлы оказываются в одной папке. А хотелось бы видеть их рассортированными по подпапкам, соответствующим сериям.
Отв: Переименование fb2-файлов
Качайте программу, которая умеет рассортировывать по папкам. Эта - не умеет.
Отв: Переименование fb2-файлов
Жаль... А научится?
Отв: Переименование fb2-файлов
Вряд ли. Придётся в корне менять логику обработки шаблонов.
Отв: Переименование fb2-файлов
Вместо слешей ставьте дефис. Получается очень наглядно и разнести по папкам - дело нескольких минут.
Отв: Переименование fb2-файлов
Я тут уже приводил ReNamer - он умеет по папкам.
Так что - в два прохода.
Отв: Переименование fb2-файлов
Уважаемый aka_SKIff!
а не планируется ли подобная, но не совсем утилита, которая меня давно интересует - запись в файл описания в табличном виде для свалки фб2 файлов? Т.е. тот же парсинг фб2, что и здесь, но результат просто сохранить в отдельный файл. Ну и чтоб работала в консольном режиме. А на вход задать чего именно из дескрипшенов фб2 интересует, чтоб парсить только то, что требуется.
А то по спискам я могу и переименовать и перенести, а вот списки получать тяжко:(
Или подскажите, может уже есть такое?
Отв: Переименование fb2-файлов
Теоретически, это можно сделать при помощи XSLT-преобразования, а затем переформатировать awk'ом каким-нибудь в нужный вид.
Или даже так:
sed -e '1,$s/<\/?description>/\n&\n/g' -e '1,/<description>/d' -e '/<\/description>/,$d' \
< Book.fb2 > Header.txt
Вырезает заголовок из книжки Book.fb2
Комнады sed'а (после
-e
):1. выносит принудительно открывающий и закрывающий теги описания на отдельные строки (добавляет переводы строки)
2. стирает всё с первой строки до тега
<description>
, включительно3. стирает всё от тега
</description>
, включительно, до конца файлаДля виндов есть Sed for Windows
Отв: Переименование fb2-файлов
С кавычками в содержимом тегов разберусь. По идее должно работать - значит баг.
А обработку слешей в шаблоне добавить недолго.
Отв: Переименование fb2-файлов
Ээээ... А хотелку можно? Маленькую? :) Добавить бы список замены символов, а?
Что бы те же кавычки (апострофы, амперсанды, знаки номера, хеши, и т.п.) можно было бы заменить на что-то ещё. Можно просто в виде двух строк, конечно, но лучше бы - в виде "ассоциативного массива", чтобы можно было и удалить и заменить символ на строку (тот же амперсанд на слово "and").
Отв: Переименование fb2-файлов
Посмотрим в ближайшие дни.
Отв: Переименование fb2-файлов
спасибо. Посмотрел. Сильная штука. Но для меня слишком умная:(
Наверняка как-то приспособить можно, но это не так просто будет. Потому как есть требование к спискам - назначение полей должно быть одинаковым независимо от конкретного файла. Может я сброшу тебе что мне надо, а ты посмотришь? А то здесь тема не совсем та.
Отв: Переименование fb2-файлов
Исправил. Добавил.
Билд 120.
Добавил в первый топик. Изменил скрин.
Отв: Переименование fb2-файлов
Для тестирования могу предложить вот этот архив: http://jno.mylivepage.ru/file/1298/3187_Kir_Bulychev.7z (пароль - мой ник)
Типа, ПСС Кира Булычева - 300+ книг в FB2, чьё переименование вызывает ряд проблем:
1. кавычки мешают создать файл
2. некоторые книги переименовываются в крякозябры (encoding опознаётся или прописан неверно)
И снова укажу ооооочень неплохую тулзу для переименования "имени генерала Пурпоса" - ReNamer (понимает даже тэги EXIF, но с FB2 пока не дружит).
(К предыдущему посту, если оно вдруг вылезет, пытался прицепиться этот архив - я сдуру выбрал его, но потом увидел, что д.б. картинка, а отцепить не смог :)
Отв: Переименование fb2-файлов
Отчёт.

При переименовании 94 файлов 12 не "захотели" в папки (могу их выслать на мэйл). Причём их приходилось удалять (переносить), чтобы программа работала дальше. При вторичном запуске программы обрабатывались и уже полученные при первом заходе папки, загоняя файлы на один уровень глубже. Может, можно придумать, чтобы уже обработанные программой файлы/папки, а также те, которые программа обработать не может, игнорировались?
Если использовать вместо слешей дефисы, папки тоже создаются, но они все пустые. Хотелось бы иметь выбор - раскладывать файлы по папкам или просто переименовывать.
Вроде всё. ;)
Отв: Переименование fb2-файлов
Перед тем, как заснуть вчера, вспомнил одну плюху с кавычками - совсем забыл, что файловая система не позволяет использовать этот символ в именах файлов и директорий.
Также исправлен баг с созданием левых директорий при использовании шаблона без слэшей.
Отв: Переименование fb2-файлов
Минуточку! Это какая ФС? Моя (ext3fs) - вполне себе позволяет :)
Я потому и просил настраиваемый фильтр замены...
Пусть уж он в .ini настраивается ручками - фиг с ним, не часто менять надо.
Типа:
[replace]
&=_and_
"=
'=
=_
Отв: Переименование fb2-файлов
Без слэшей работает как надо.
А со слэшами отказывается обрабатывать некоторые файлы. Закономерности обнаружить не могу.
Отв: Переименование fb2-файлов
Спасибо за программу!
Есть пожелание
1) Отключить по умолчанию переименовывание во всех папках, кроме указанной.
Галочку для желающих. А то я первым же запуском дублей наплодил на всем логическом диске ))
2) Что-то с переименовыванием не всегда корректно получается.
Слово "Здоровье" вот так выглядит, по мнению проги: Zdorovbe
Я понимаю, что нынче эра албанского, но не настолько же ))
Отв: Переименование fb2-файлов
Попробовал версию 0.7.133
52 fb2-файла, имена файлов в windows-1251, fb2 внутри - некоторые windows-1251, некоторые utf-8.
FBRename 0.7.133, как оказалось, не только переименовывает, но и перекодирует файлы (windows-1251 -> utf-8) чего, вообще-то, не было нужно.
Кроме того, больше половины файлов переименовались некорректно. Точно определить что именно произошло я затрудняюсь, но похоже, что эта часть файлов получила имена в utf-8. Наподобие такого: RќRµR·RЅR°RЅSЃRєReR№_R¤SЂReRґSЂReS…_R“RѕSЃRїRѕRґReRЅ_R°RґRІRѕRєR°S‚-14_R“R»R°RІRЅS‹R№_SЃRІReRґRµS‚RµR»SЊ.fb2
Причем оригиналы для этих неудачных переименований были как в windows-1251, так и utf-8.
Так что придется мне вернуться к опостылевшей перловке...
Отв: Переименование fb2-файлов
Для интересующихся организовал продолжение банкета.
Отв: Переименование fb2-файлов
А можно добавить в шаблон символ ну скажем %O - оригинальное имя файла (без расширения)? Ну очень надо!
Страницы