Вы здесьещё один каталогизатор fb2
Опубликовано чт, 05/11/2009 - 04:09 пользователем Малолетний Д.
Linux. GPL. Python + Qt4.5 + sqlite3. Под оригинальным названием PyHomeLib.
|
Вход на сайтПоиск по блогам и форумамUser menuПоследние комментарии
Larisa_F RE:Собираем серию: "Мастер серия", издательство "Лимбус". 2 часа
Larisa_F RE:Серия книг «Судьбы книг» издательства «Книга» 2 часа Larisa_F RE:За иллюминатором (серия) - чего не хватает? 4 часа Larisa_F RE:Книжная серия «Сlio» издательства "Евразия" 5 часов Rebellioner RE:Подайте бедному копеечку на книжку с литреса... 1 день sem14 RE:Серия "Что есть что" издательства "Слово"(чего не хватает) 3 дня larin RE:Пропал абонемент 6 дней tvv RE:DNS 1 неделя MrMansur RE:<НРЗБ> 1 неделя Stager RE:Беженцы с Флибусты 2 недели Tramell RE:Серия "Библиотека французской литературы" (Макбел) 2 недели sem14 RE:Книжная серия "Жизнь в искусстве" издательство "Искусство"... 2 недели sem14 RE:Современная корейская литература. Книжная серия... 2 недели sem14 RE:Серия "Символы времени" издательства "Аграф" 3 недели sem14 RE:Собираем серию: "Азбука-триллер", издательство "Азбука-Терра" 3 недели sem14 RE:«Юмористическая серия» 3 недели larin RE:Оплатил. Абонемент не отображается 3 недели larin RE:Оплатил, но абонемент не отображается 1 месяц Впечатления о книгах
Barbud про Старицын: Балаклава Красная (Альтернативная история, Социальная фантастика, Попаданцы, Самиздат, сетевая литература)
11 01 Дерьмовенько, как и все прочее у этого автора. Герои скучны, безэмоциональны и безмысленны, как какие-то юниты в компьютерной игре. Клик мышкой - на суше врага разбили, еще клик - на море эскадру потопили, новый клик - заводы ……… Оценка: плохо
Barbud про Алмазный: Казачонок 1860. Том 1 (Альтернативная история, Исторические приключения, Попаданцы, Самиздат, сетевая литература)
11 01 Скучно, вторично. Сюжет этого писева очень напоминает опусы еще одного воспевателя казачества, почти калька, но написано намного хуже, хотя, казалось бы, хуже уже некуда. Однако же вот... Оценка: плохо
lorealke про Arladaar: Калгари 88 (Самиздат, сетевая литература)
11 01 Читать, ЕСЛИ: Вам нравятся спортивные драмы, технические детали тренировок и жанр попаданцев. Выкинуть в мусорку, ЕСЛИ: Вас тошнит от бесконечных описаний того, как фигуристка выполнила «прыжок в три с половиной оборота ……… Оценка: хорошо
obivatel про Вперёд в прошлое
10 01 2 Barbud, и у вас, и у автора наблюдается непонимание прописных истин управления 1. У любой проблемы ВСЕГДА есть как минимум одно очевидное недорогое легкореализуемое НЕВЕРНОЕ решение 2. Никто не правит в одиночку. 3. ………
obivatel про Возвращение Безумного Бога
10 01 То ли ИИ писал по мотивам корейских манг (типа, Она открыл книга и дёрнул за обложка) , то ли одно из двух. Множественные нарушения логики, противоречия описаний и событий, несоответствия хронологии событий -- всё это режет ………
Никос Костакис про Махров: Спасибо деду за Победу! Это и моя война [litres] (Боевая фантастика, Попаданцы)
09 01 Рубашка броская – косоворотка белого цвета в национальном стиле, с вышитым воротником и этим… как его? – не помню, вокруг застежек, короче". ______________________________ Дело происходит возле украинского "бандеравского" села. Косоворотка, как украинская одежда??? Ну-ну...
M_osk про Спинрад: Русская весна (Научная фантастика)
08 01 очерк = Виталий Бабенко. Пятое время года добавлен, а также отсутствующие иллюстрации Оценка: отлично!
svetik489 про Иевлев: Ковыряла (Киберпанк, Социальная фантастика, Самиздат, сетевая литература)
05 01 было бы хорошо,но такой перебор со сленгом.... поэтому неплохо Оценка: неплохо
lorealke про Птица: Конструктор живых систем [СИ] (Альтернативная история, Городское фэнтези, Стимпанк, Самиздат, сетевая литература)
03 01 Очередная агитка под видом «боярки» для подростков. Антагонисты слеплены по методичке из телевизора: мерзкий поляк, подлый грузин и надменный швед против «святого» русского мальчика. Весь мир книги — это унылая «осажденная ……… Оценка: плохо
mysevra про Лукьяненко: Последний Дозор (Фэнтези)
03 01 В своё время я была в восторге от первых двух книг, а эта – просто выжимки из опилок, не стоящие внимания. И очень повлияла на моё восприятие творчества автора его гражданская позиция – оказалось, что это не просто фантаст, ……… Оценка: плохо
mysevra про Сегень: Поп (Историческая проза, Православие)
03 01 Интересные страницы истории. Люди, у которых есть чёткие моральные принципы и жизненные ориентиры на любой случай (неважно, чем продиктованные: традициями, профессией, религией или понятиями) – им и сложнее, и проще одновременно. ……… Оценка: хорошо |
Комментарии
Отв: ещё один каталогизатор fb2
Прикольно :-)
Отв: ещё один каталогизатор fb2
Что делает, что умеет, напишите, пожалуйста.
Отв: ещё один каталогизатор fb2
Добавляет .fb2 из указанных директорий в базу, после позволяет всячески искать,
можно создавать различные группы книг, например "Избранное", "К прочтению",
позволяет выполнить из всплывающего меню практически любое действие с файлом книги,
в настройках указываются названия действий и командные строки, по умолчанию там
запуск FBReader, Okular, просмотр информации о файле, валидация.
Отв: ещё один каталогизатор fb2
добавил в /soft.
спасибо.
Отв: ещё один каталогизатор fb2
обидно в дебиане qt 4.4.3-1 (((
Отв: ещё один каталогизатор fb2
Обнови)
Регистрация на сайте
Я давно в интернете но такой удивительный бардак вижу впервые!Не могу даже зарегистрироваться!Что с автоматикой?Надо же за ней следить!!!
Отв: ещё один каталогизатор fb2
Пробую запустить под виндой. Python 2.6. PyQT4, PySQLite и QT (2009.04) скачал с офсайтов, exapl'ы работают, а каталогизатор не хочет, сообщая, что "No module named ui_statisticsdialog".
Отв: ещё один каталогизатор fb2
Там для интерфейса этого окна автор забыл сгенерировать соответствующий файл с классом.
Можно сделать так (находясь в каталоге с программой):
pyuic4 statisticsdialog.ui > ui_statisticsdialog.py
У меня OpenSuse 11.1, pyuic4 входит в пакет python-qt4-devel, в других дистрибутивах может и отличаться.
Сама программа вроде работает, но проверил только на небольшом каталоге с парой десятков файлов fb2. Файлы с кириллицей в имени или пути не открывает - имя в неправильной кодировке (у меня в системе UTF-8, естественно).
На всякий случай приложил файл ui_statisticsdialog.py, если вдруг кому неохота ставить кучу devel-пакетов. Файлы с расширеним PY тут почему-то заливать нельзя, поэтому поменял его на TXT, потом поменяйте обратно.
Отв: ещё один каталогизатор fb2
Посмотрим, спасибо.
Отв: ещё один каталогизатор fb2
Поправил.
Для поклонников debian stable теперь есть патч. Делаем так:
pyhomelib$ patch -Np1 < pyhomelib-legacy.patch
Проверил на свежей установке Debian Lenny, вроде всё работает.
Отв: ещё один каталогизатор fb2
Сгенерировать не забыл, а вот добавить в репозиторий таки да. Поправим, спасибо.
Отв: ещё один каталогизатор fb2
Беспокоит как это будет работать на старых машинах. Такая связка не отличается хорошей производительностью =\
Отв: ещё один каталогизатор fb2
Главное, у меня работает :))
Ну, может кто-нибудь перепишет на C++, ничего специфически питоновского там нет, всё через Qt. От самого Qt избавиться сложнее, проще с нуля.
Отв: ещё один каталогизатор fb2
Жаль что нет под Debian Lenny. Обновлять не хочу, так как жаль систему)
Отв: ещё один каталогизатор fb2
А не сможет ли уважаемый автор собрать это под maemo 5 (N900). Полноценный каталогизатор в кармане сильно бы облегчил жизнь.
Отв: ещё один каталогизатор fb2
Нет. Надо искать специалиста.
Отв: ещё один каталогизатор fb2
А нельзя ли научить программу работать с файлами *.fb2.zip?
Отв: ещё один каталогизатор fb2
Научить-то можно, разумеется, но есть ли в этом необходимость?
Отв: ещё один каталогизатор fb2
у меня ошибка: ImportError: cannot import name QtSql
все необходимые пакеты стоят, не подскажите в чем может быть дело?
Отв: ещё один каталогизатор fb2
Пакеты libqt4-sql, libqt4-sql-sqlite установлены? Это если у Вас Debian, в других дистрибутивах могут называться по-другому.
Отв: ещё один каталогизатор fb2
проверила, установлены:
burenka@crazy-nout:~$ dpkg -l|grep libqt4-sql
ii libqt4-sql 4.5.3really4.5.2-0ubuntu1 Qt 4 SQL module
ii libqt4-sql-sqlite 4.5.3really4.5.2-0ubuntu1 Qt 4 SQLite 3 database driver
Отв: ещё один каталогизатор fb2
python-qt4-sql?
Отв: ещё один каталогизатор fb2
все получилось. спасибо.
пакет, действительно, не стоял.
Отв: ещё один каталогизатор fb2
Только сейчас снова добрался до этой программы. Ещё предложение: сделать, чтоб искало (название, автора и т.п.) без учёта регистра и по подстроке, хотя бы опционально. Сейчас оно ищет с учётом регистра и по подстроке только сначала слова, что довольно неудобно.
Отв: ещё один каталогизатор fb2
Уже есть, нужно только собрать расширение на C:
$ make ext
или, чтобы ещё игнорировало разницу между "ё" и "е":
$ make ext yo=1
(Нужен gcc) UPD: ...а также libicu-dev, libsqlite3-dev.
Тоже можно. Просто набираете в начале строки знак процента (%).
Отв: ещё один каталогизатор fb2
Спасибо, "%" работает, "ё" не проверял, нет таких книг и авторов, а вот регистронезависимый поиск - всё равно не работает. make ext yo=1 отработало без ошибок, все необходимые заголовочные пакеты и библиотеки, стало быть, есть.
Отв: ещё один каталогизатор fb2
Должны были появиться sqlite3ext.so и libSqliteIcu.so. В каталоге с программой.
Отв: ещё один каталогизатор fb2
Появились, но в поиске ничего не изменилось. Я даже добавил каталог с Pyhomelib в /etc/ld.so.conf и запустил ldconfig - думал, может, оно эти библиотеки не видит, но всё равно в поиске ничего не изменилось.
Отв: ещё один каталогизатор fb2
Интересно, интересно. Добавлять в ld.so.conf - это, безусловно, лишнее. А что у Вас за версии python'а и sqlite3? Надо попробовать воспроизвести.
Отв: ещё один каталогизатор fb2
$ python --version
Python 2.6.2
$ rpm -qa | grep -i sqlite | sort
libqt4-sql-sqlite-4.6.0-14.1.i586
libsqlite3-0-3.6.16-2.3.i586
qt3-sqlite-3.3.8b-115.1.i586
sqlite2-2.8.17-168.2.i586
sqlite3-3.6.16-2.3.i586
sqlite3-devel-3.6.16-2.3.i586
У меня OpenSuse 11.2.
PS: извините, промахнулся по ссылке и сломал тред, а удалять свои сообщения тут, похоже, нельзя.
Отв: ещё один каталогизатор fb2
Не могу разобраться, в чём дело, а сусе ставить как-то лень.
Если запустить
$ python -c 'import sqlite3ext as s; print dir(s); s.load_icu(None)'
из каталога программы, что питон говорит?
(Есть гарантированный вариант для настоящих мужчин: пересобрать дистрибутивный sqlite3 с -DSQLITE_ENABLE_ICU=1 -licui18n -licuuc . В таком случае регистронезависимый юникодный поиск появится во всех приложениях, использующих либу. Не знаю, почему Debian собирает без.)
Отв: ещё один каталогизатор fb2
Прошу прощения за ответ с такой задержкой - уезжал в безынтернетные места.
$ python -c 'import sqlite3ext as s; print dir(s); s.load_icu(None)'
Traceback (most recent call last):
File "", line 1, in
ImportError: ./sqlite3ext.so: undefined symbol: sqlite3_enable_load_extension
Судя по spec-файлу, в OpenSuse 11.2 sqlite3 собран с такими опциями: -DSQLITE_ENABLE_COLUMN_METADATA=1 -DSQLITE_SERVER=1
Вариант для настоящих мужчин не очень удобен, т.к. sqlite3 может обновиться и перекрыть самосборный. Впрочем, надо попробовать.
Отв: ещё один каталогизатор fb2
Давненько что-то
не брал я в руки шашекне заходил на либрусек. Извините.Дело проясняется, спасибо. Проблема тут вот в чём.
При компиляции sqlite3 существует возможность запретить загрузку расширений: есть такой ключик - --disable-load-extension. (Разрешающий, наоборот, --enable-load-extension.) Применение оного ключика ведёт к отсутствию в собранной библиотеке функций sqlite3_enable_load_extension и sqlite3_load_extension - и это как раз Ваш случай: в вышеуказанной .rpm-ке их нет.
С моей стороны сделать тут что-либо не представляется возможным, спасёт только пересборка.
Вопрос с обновлениями может быть решён путём помещения собранной библиотечки libsqlite3.so.x.y.z непосредственно в каталог с программой и создания там же симлинка с именем libsqlite3.so.x:
$ ln -s libsqlite3.so.0.8.6 libsqlite3.so.0
Далее можно запускать программу примерно так:
$ LD_LIBRARY_PATH=. python pyhomelib.py
Отв: ещё один каталогизатор fb2
Это, пожалуй, самый лучший вариант, так и сделал - работает. Большое спасибо!
PS: будете ли развивать программу дальше? А то я смотрю - последние коммиты от 15 февраля. Было бы жаль, если проект умрёт. Другой свободный аналог для Linux - MyRuLib - на FLTK/Gtk, что не очень хорошо. Сам рад бы помочь, но я не программист и на Питоне разве что "hello, world" напишу.
Отв: ещё один каталогизатор fb2
Ну, у меня есть небольшой список to do, который хотелось бы реализовать до выпуска release candidate, но как-то всё пока руки не доходят. А в какую сторону развивать-то? Лично меня в общем и целом устраивает, пользуюсь. Есть какие-то предложения?
Отв: ещё один каталогизатор fb2
Пока предложения такие:
- списки книг/авторов и т.п. (таблицы) покомпактней, а то занимают очень много места;
- по возможности какой-то единый поиск (хотя бы опционально), т.е. одно поле для поиске, текст из которого ищется в названиях книг, именах авторов, жанрах и т.д.; как на этом сайте, к примеру; думаю, это не сильно замедлит поиск;
- можно ли как-то ускорить импорт? Сколько оно будет переваривать полный текущий срез "Либрусека"/"Флибусты"? Я так понял, у вас сделан полный разбор XML-файла с книгой, а если разбирать только заголовок, регулярными выражениями? (если что - просто мысли дилетанта).
Пока больше ничего в голову не приходит. Ну, и пожелание ещё: можно ли обсуждение программы и т.п. перенести на тот же github.com? Там вроде можно сделать что-то вроде форума и/или багтрекера? А то я после известных событий перешёл на "Флибусту" и сюда захожу только ради этой программы :-)
Отв: ещё один каталогизатор fb2
Долго переваривает только первый раз, потом (обновления) кушает быстрее.
Пожелания учту.
Отв: ещё один каталогизатор fb2
Сделал настраиваемой высоту строки в таблицах, ещё кое-что поправил.
Отв: ещё один каталогизатор fb2
пофиксил пару неприятных багов
Отв: ещё один каталогизатор fb2
Есть. Нажимать '/' или 'Ctrl+F'. Ищет по фамилиям, названиям, сериям.