Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Gremlin2 Новенький участник форума
Зарегистрирован: 06.04.2008 Сообщения: 70
|
Добавлено: Вс Апр 13, 2008 1:00 Заголовок сообщения: |
|
|
AlexArh писал(а): | А можно доделать прогу так, чтобы она генерировала ID если его нет воо бще (тег <id> пропущен) или ID пустой |
Gremlin2 писал(а): | Правит структуру <title-info>, <document-info>, <src-title-info>. |
т.е. если пропущен один из жизненно важных элементов, в том числе и id, программа, в силу своих возможностей и способностей:D, попытается их дополнить или исправить. |
|
Вернуться к началу |
|
|
AlexArh Новенький участник форума
Зарегистрирован: 24.11.2006 Сообщения: 21
|
Добавлено: Вс Апр 13, 2008 10:59 Заголовок сообщения: |
|
|
Gremlin2
Спасибо! Действительно работает.
Просто в первый раз я не обратил внимание на то, что исправленный файл кладется в отдельный каталог, проверял тот же файл. |
|
Вернуться к началу |
|
|
kis Новенький участник форума
Зарегистрирован: 26.03.2008 Сообщения: 19
|
Добавлено: Пн Апр 14, 2008 12:41 Заголовок сообщения: |
|
|
Gremlin2 писал(а): | Нашёл другую проблему, часто встречаются в разметке документа тэги:
Код: | <h2 xmlns="">Taken: , 1</h2> |
Что делать и кто виноват? |
Кто виноват не знаю, но по моему их можно смело вырезать
Еще мне попадались похожие, я их резал так:
Код: | s/<h2 xmlns="">Taken: note\d+, 1<\/h2>//g |
|
|
Вернуться к началу |
|
|
Gea Новенький участник форума
Зарегистрирован: 16.04.2008 Сообщения: 9
|
Добавлено: Сб Апр 19, 2008 14:42 Заголовок сообщения: |
|
|
Программа игнорирует файлы с неправильным расширением или если его нет - нельзя ли сделать парсер - что там в начале - zip fb2 или нечто другое и выдавать соответствующее сообщение.
Также желателен ключик подавления сообщения об успешном импорте, чтобы можно было сразу видеть только ошибки.
Еще одна проблема - файлы с неверно выставленной кодировкой убиваются напрочь. Например, файл utf-8, а стоит win-1252. В результате вместо всех русских букв - вопросы.
Понятно, что это косяк самого файла, но желательно об этом хотя бы сообщать. Все-таки эта утилита - под конкретное русское сообщество и для русского языка, поэтому остальные можно пока не учитывать, я думаю.
А за программу - большое спасибо. |
|
Вернуться к началу |
|
|
Mar00k Новенький участник форума
Зарегистрирован: 16.11.2007 Сообщения: 32 Откуда: Минск
|
Добавлено: Сб Апр 19, 2008 15:06 Заголовок сообщения: |
|
|
Gremlin2, большое спасибо за программу!
Помогает откорректировать кривоватый формат при создании fb2 из rss каналов. |
|
Вернуться к началу |
|
|
Gremlin2 Новенький участник форума
Зарегистрирован: 06.04.2008 Сообщения: 70
|
Добавлено: Сб Апр 19, 2008 16:49 Заголовок сообщения: |
|
|
Gea писал(а): | Программа игнорирует файлы с неправильным расширением или если его нет - нельзя ли сделать парсер - что там в начале - zip fb2 или нечто другое и выдавать соответствующее сообщение. |
Возможно, в скором времени, сделаю определение типа файла по содержимому.
Gea писал(а): | Еще одна проблема - файлы с неверно выставленной кодировкой убиваются напрочь. Например, файл utf-8, а стоит win-1252. В результате вместо всех русских букв - вопросы.
Понятно, что это косяк самого файла, но желательно об этом хотя бы сообщать. |
А как ещё программа должна угадывать кодировку? Я конечно могу использовать тот же механизм, что использует IE для определения кодировки, но во первых, это медленно, а во вторых очень не надёжно и полагаться на результат я бы не стал.
Добавлено спустя 2 минуты 4 секунды:
На сайте проекта доступна новая версия (1.0.2)
Полный список опций для обработки можно получить запустив программу без параметров.
Основные изменения в новой версии:
- Переработан алгоритм обработки файлов
- Возможность настраивать вид результирующего документа (/indentheader и /indentbody)
- Переименование документов по шаблону (/rename и /pattern)
- Обработка имён файлов (/translify, /upper, /lower и /replacechar)
- Возможно указать свой SGML dtd файл. (/dtd)
- Настройки протоколирования (/logfile и /loglevel)
- Исправлены мелкие баги.
- Добавлены новые мелкие баги.
В шаблоне используется синтаксис, сходный с таковым в программе FBLibraryFileRename и FB2Librarian. Дополнительно в шаблоне можно использовать: *SII* и *SIII*, для формирования двух и трёх числовых значений номера серии, соответственно. Опции {x}, {U}, {L} и {T} не поддерживаются. Используйте: /translify, /upper, /lower и /replacechar.
Из нерешённых проблем:- Определение типа файла по содержимому.
- Определение неправильно указанной кодировки документа.
- Могут пропускаться некоторые ошибки в разметке документа, неправильные тэги и т.д.
|
|
Вернуться к началу |
|
|
Dusper Новенький участник форума
Зарегистрирован: 15.03.2008 Сообщения: 17
|
Добавлено: Сб Апр 19, 2008 23:36 Заголовок сообщения: |
|
|
Отличная и очень полезная программа.
Огромная благодарность автору.
Вот только очень беспокоит проблема с кодировкой файла. Можно ли каким-нибудь способом выявить файлы с неправильной кодировкой до или после обработки библиотеки Fb2Fix'ом?
И еще вопрос: можно ли как то отключить автоматическую вставку "FB2Fix" в имя автора, если имя автора у исходного файла отсутствовало? Авторы с одной фамилией выглядят значительно симпатичнее, чем "Фамилия FB2Fix". |
|
Вернуться к началу |
|
|
Gremlin2 Новенький участник форума
Зарегистрирован: 06.04.2008 Сообщения: 70
|
Добавлено: Вс Апр 20, 2008 13:56 Заголовок сообщения: |
|
|
Gea писал(а): | Еще одна проблема - файлы с неверно выставленной кодировкой убиваются напрочь. Например, файл utf-8, а стоит win-1252. В результате вместо всех русских букв - вопросы. |
А можно пример посмотреть? Если у этого файла BOM (Byte Order Mark в начале файла), что стоит в <?xml encoding="..."?>, и где стоит win-1252? |
|
Вернуться к началу |
|
|
Gea Новенький участник форума
Зарегистрирован: 16.04.2008 Сообщения: 9
|
|
Вернуться к началу |
|
|
Gremlin2 Новенький участник форума
Зарегистрирован: 06.04.2008 Сообщения: 70
|
Добавлено: Вс Апр 20, 2008 18:39 Заголовок сообщения: |
|
|
Страшненько , но есть идея, будем пробывать.
Добавлено спустя 5 часов 25 минут 31 секунду:
На сайт проекта выложил новую версию (1.0.3)
Gea писал(а): | Также желателен ключик подавления сообщения об успешном импорте, чтобы можно было сразу видеть только ошибки. |
Ключик:
Код: |
/loglevel:{Off|Critical|Error|Warning|Information|Verbose}
|
Можно указать, например, /loglevel:Warning. Будут выводиться все сообщения до уровня Warning включительно, т.е. Critical, Error и Warning.
Gea писал(а): | Еще одна проблема - файлы с неверно выставленной кодировкой убиваются напрочь. Например, файл utf-8, а стоит win-1252. В результате вместо всех русских букв - вопросы.
Понятно, что это косяк самого файла, но желательно об этом хотя бы сообщать. |
Вроде исправил, если не возможно сохранить документ в указанной в нём кодировке, программа сохранит его в utf-8. Но есть побочный эффект: если в документе win-1251 встретится хотя бы один символ вне диапазона 0-255, пусть даже в виде то весь документ будет сохранён в utf-8.
Dusper писал(а): | И еще вопрос: можно ли как то отключить автоматическую вставку "FB2Fix" в имя автора, если имя автора у исходного файла отсутствовало? Авторы с одной фамилией выглядят значительно симпатичнее, чем "Фамилия FB2Fix". |
Разумно, отключил. |
|
Вернуться к началу |
|
|
Dusper Новенький участник форума
Зарегистрирован: 15.03.2008 Сообщения: 17
|
Добавлено: Пн Апр 21, 2008 0:24 Заголовок сообщения: |
|
|
Спасибо за новую версию!
Gremlin2 писал(а): |
Можно указать, например, /loglevel:Warning. Будут выводиться все сообщения до уровня Warning включительно, т.е. Critical, Error и Warning. |
К сожалению, если писать сообщения в лог до уровня warning, то понять на какой книги произошла ошибка не получится, т.к. имя обрабатываемого файла принадлежит уровню Information. Было бы здорово, если бы в error писалось имя файла, на котором произошла ошибка.
Добавлено спустя 8 минут 34 секунды:
После обработки новой версией книги с кривой кодировкой по ссылке выше в папке Good создается архив нулевого размера...
Добавлено спустя 10 минут 8 секунд:
Это если использовать настройки по умолчанию. После скармливания программе следующего файла настроек, файл создается:
Код: | /rename+ /loglevel:Information /logfile:log.txt /translify- /replacechar:" " |
Но файл с проблемной кодировкой корректно обрабатывается только в том случае, если он находится в зип-архиве. Если файл по ссылке выше сначала распаковать, то в результате обработки предупреждение о том, что файл будет преобразован в utf-8 не выскакивает, а в конечном файле отображается абра-кадабра вместо текста... |
|
Вернуться к началу |
|
|
Gremlin2 Новенький участник форума
Зарегистрирован: 06.04.2008 Сообщения: 70
|
Добавлено: Пн Апр 21, 2008 0:52 Заголовок сообщения: |
|
|
Dusper писал(а): | После обработки новой версией книги с кривой кодировкой по ссылке выше в папке Good создается архив нулевого размера... |
Dusper писал(а): | Но файл с проблемной кодировкой корректно обрабатывается только в том случае, если он находится в зип-архиве. Если файл по ссылке выше сначала распаковать, то в результате обработки предупреждение о том, что файл будет преобразован в utf-8 не выскакивает, а в конечном файле отображается абра-кадабра вместо текста... |
Файл в студию! У меня в разных вариантах - неизменно превосходный результат. |
|
Вернуться к началу |
|
|
Dusper Новенький участник форума
Зарегистрирован: 15.03.2008 Сообщения: 17
|
|
Вернуться к началу |
|
|
Cd_spb Зрелый участник форума
Зарегистрирован: 28.06.2006 Сообщения: 189
|
Добавлено: Пн Апр 21, 2008 10:14 Заголовок сообщения: |
|
|
Gremlin2, Выше я просил измнеять версию файла. НО! Делать это нужно только когда были существенные изменения, а не только indent. А то получаеться, что взял пачку абсолютно правильных файлов, разложил их при помощи fb2fix по каталогам. Не понравилось - еще раз разложил, Оп-па, а у документов версия файлов изменилась.
Правка структуры не является правкой документа. |
|
Вернуться к началу |
|
|
Dusper Новенький участник форума
Зарегистрирован: 15.03.2008 Сообщения: 17
|
Добавлено: Пн Апр 21, 2008 10:38 Заголовок сообщения: |
|
|
Поддерживаю Cd_spb. |
|
Вернуться к началу |
|
|
|
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
|
Powered by phpBB © 2001, 2005 phpBB Group
|