Как стать автором
Обновить
12
0

Пользователь

Отправить сообщение

Спасибо, что оценили мою статью! А комментарии помогли мне многое улучшить в моем проекте)

Похоже, но у меня попроще намного. Для нас лучше, конечно, чтобы данные подтягивались не с Амазона, а с Литреса и Лабиринта. Но у меня пока такого нет. Ручками забиваю обложку, содержание, описание. Но идея хорошая, сделать так, чтобы все это руками не надо было вносить. Будет, над чем поработать)

Спасибо за совет! В любом случае, я люблю учиться всему новому, и до новых технологий доберусь)

Помимо maven, я еще искала такие решения, которые работают с javafx. Так как у меня весь проект на javafx (для десктопа). А читалка - это только часть проекта (об этом я пишу подробнее ниже в комментариях). Целиком запрос выглядел примерно так: java fb2 maven javafx. Возможно, поэтому и не встретила ваш вариант. Насколько я поняла, он больше на Андроид рассчитан. К тому же, он написан 6 лет назад, и нужно проверять, будет ли работать с новыми версиями jre, javafx и другими зависимостями, которые использую в проекте.

Кстати, я поняла, почему мне не попался этот парсер. Он для Gradle, а я искала для Maven. Но я его поизучаю, когда буду делать версию для Андроид (если, конечно, решусь).

Вы будете смеяться, но первую версию своего каталога электронных книг я сделала на html+css (с использованием фреймворка bootsprap). Делала чисто для себя и где-то полгода пользовалась. Потом поняла, что это извращение и решила изучить Java. А почему бы и нет?)

Спасибо) Попробую сделать, как вы советуете.

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

Заранее бы не оценила. Но поскольку выбрала второй вариант, значит, для меня так оказалось проще. Этот код я писала для себя, своих нужд, не для статьи и не для того, чтобы произвести на кого-то впечатление. Выбрала для себя кратчайший путь. Я действительно потратила время на поиски других вариантов. Но то, что выше предлагали, не попадалось. А нейронка предложила код с библиотекой, которая подходит для EPUB. К тому же, если нужна читалка попроще, возможно, сделать своими силами тоже вариант. Например, когда я подключила библиотеку для читалки файлов doc, моя программа "потяжелела" на 200 Мб. А до этого весила в 4 раза меньше. Читала где-то, что подключение стронних библиотек имеет и другие минусы. Поддержка, совместимость, производительность, ошибки в чужом коде и т.д.

ага, да еще и все на разных SSD. Жалко терять время на поиски нужной информации. А еще обидно, если когда-то прочитала полезную книгу нон-фикшн, а через неделю в голове остается только 25%, а еще через месяц вообще только смутное воспоминание. Теперь я могу написать небольшой конспект и положить в папку с книжкой. И ничего не пропадает и не забывается)

Посмотрю) Теперь уже чтобы позаимствовать фишечки)

да, вы правы. Основной контент в html. Но есть парочка xml, в одном из которых указывается порядок следования файлов html (это файл с расширением OPF), а в другом содержится навигация (файл с расширением NCX для v2). С другой стороны, jsoup действительно не очень хорошо парсит xml, с этим я тоже уже сталкивалась, разбирая docx. Рассматриваю другие варианты (по ссылке, которой поделились чуть выше в комментариях).

Изначально мой проект - каталогизатор, который я писала под собственные нужды. Накопилась огромная библиотека электронных книг. Когда хочу чего-нибудь почитать, не могу вспомнить, зачем я когда-то скачивала или покупала ту или иную книгу, и что меня в свое время вдохновило на это. Иными словами, пропадала мотивация читать к тому моменту, когда появлялось время на чтение. Надо было с этим что-то делать. Вот и возникла идея сделать программу чисто под мои собственные запросы. Вот прям в голове была картинка, что и как я хочу, и ничего другого не предлагать) Программу написала, давно пользуюсь. А читалки недавно решила дописать, причем попроще. Чисто для удобства, чтобы сразу из каталога можно было книгу открыть. Но чувствую, что буду улучшать по мере сил и свободного времени. Комментарии с Хабра вдохновляют на это)

Убедили) Читалку FB2 переделаю для своего проекта. В читалке EPUB я уже воспользовалась библиотекой Jsoup для парсинга XML. Там почти все то же самое. Распаковка ZIP, потом парсинг XML. Но немного структура сложнее, и 2 версии (v2 и v3) с разными структурами XML. В них элементы раскиданы хаотично, о чем многие тут предупреждают, что такое возможно.Поэтому там без грамотного парсинга никак не обойтись. Если будет интерес у кого-нибудь, напишу статью про EPUB)

Спасибо на добром слове! Насчет description. Не исключено, что так и будет. Будем решать проблемы по мере поступления)

Это возможно, но мне таких книг не попадалось. Но я подумаю, как избежать такого варианта. Спасибо.

Спасибо за отзыв и информацию о парсинге XML. Поизучаю. А вот по поводу блока body, я знаю, что их может быть более одного. Мой код это учитывает, так как он захватывает все содержимое между первым (indexOf) и самым последним (lastIndexOf) элементами body. Что касается всяких опций, вроде сносок, колонтитулов, настроек шрифтов, закладок и т.д., тут вы абсолютно правы. Будем над этим работать)

Ах, вот что имеется в виду! Я поняла. В таком случае идея с распаковщиком стоящая.

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

А вообще зачем искать сторонние библиотеки, если читалку fb2 можно написать самостоятельно за довольно короткое время? Об этом, в том числе, моя статья)

1

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность

Специализация

Software Developer, Web Developer
Intern
Java
PHP
XML
Web
CMS «1С-Bitrix»
HTML
CSS
JavaScript
Web development
WordPress