XpressLib — любителям читать, посвящается!

    imageПо мотивам этого топика. Обещал — сделал.
    XpressLib — приложение для symbian 9.4, которое предназначено для поиска и бесплатной загрузки книг в формате fb2 с сайта flibusta.net. Программа использует специально написанный для нее сервер, который содержит ежедневно пополняемый каталог из более чем 30 тысяч авторов и более чем 130 тысяч книг. Экономия трафика максимальна, так как при обмене с сервером передается и принимается минимальное количество информации. Найдя нужную книгу, ее тут же можно загрузить. Книги загружаются, сжатые в zip, и сохраняются в папку Text на карте памяти, при этой загруженные файлы имею название на русском языке, содержащее имя автора и название книги.


    Основные фишки программы


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

    Требования


    Для работы программы необходим python 2.0 или выше, установленный из пункта меню «Обновление ПО» или из Ovi Store, либо python 1.9.7 (при этом программу и python нужно устанавливать на один и тот же диск. скачать python 1.9.7). После установки python желательно перезагрузить смартфон.
    Для чтения книг, рекомендую лучшую, по моему мнению, программу ZXReader, которая написана нашим соотечественником.

    image

    Как это все работает


    Как уже было сказано выше, для работы программы был написан сервер, который работает следующим образом:
    Раз в сутки, в 3 часа ночи, с проекта MyRuLib тянется свежая база данных в формате sqlite3. Далее хитрый скрипт кромсает ее вдоль и поперек, для оптимизации работы с ней же. Это позволило уменьшить в десятки раз время поиска по некоторым запросам.
    Сам сервер написан на python с использованием фреймворка web.py (можно было прекрасно обойтись и без него, но лень иногда берет верх). Ответы на запросы смартфону отдаются в формате xml.
    Сама же программа написана на языке программирования python. Реализация заняла у меня пару вечеров неторопливого кодинга. Практически весь UI писался вручную, используя библиотеки appuifw и graphics. Общение с сетью происходит стандартными средствами модуля urllib.
    О программировании на python для Symbian я писал в блоге Python for s60.

    Благодарности


    Прежде всего хочу поблагодарить автора проекта MyRuLib, теперь уже хабраюзера lintest, за работу над поддержкой базы данных книг. Так же, хабраюзера Tcapb за дизайн к этой и другим моим программам. И конечно же благодарности создателям и людям, которые наполняют контентом проект flibusta.net

    И наконец, скачать!


    Программа абсолютно бесплатна, и скачать ее можно с офф. сайта.
    P.S. Не забывайте про кнопку «поддержи проект» в программе. Деньги, полученные с донейтов идут на оплату сервера, кофе и плюшки :)
    P.P.S. Программа находится в стадии beta, поэтому на глюки и недоработки прошу сильно не ругать.
    Поделиться публикацией
    Комментарии 65
      +1
      Молодец! Юзабельно!
      Еще бы что-то вроде функционала «открыть эту книгу в ZXReader», для экономии тыканий в экран; возможно?
        0
        Ок, посмотрю, поймет ли ZXReader путь к файлу в качестве аргумента.
        • НЛО прилетело и опубликовало эту надпись здесь
            0
            Сейчас он над новой версией с новым движком коптит, старую допиливать уже врядли будет.
            • НЛО прилетело и опубликовало эту надпись здесь
        0
        в какой-то момент перешел с симбиана на другую мобильную ось, но смартфон на симбе до сих пор у меня существует.
        Спасибо за такую вещь. Ее реально не хватало. Теперь читать можно будет больше.
          0
          Вы плюшками tellico за заимствованный иконкоарт помогаете?
          +1
          Вы не могли бы открыть API для работы с вашим сервером? Написал бы версию под android.
            0
            Да без проблем, только денек сервер помониторю, посмотрю как справляется.
              0
              Отправил вам в личку инструкции, все достаточно просто :)
                0
                Спасибо. Действительно очень простое api =)
              –4
              А писатели снова без плюшек останутся?
                0
                Я один из немногих конечно, но хотелось бы еще и под UIQ3 (считаеться Sumbian S60)…
                Вы не смогли бы портировать? Думаю сообщество SE будет вам невероятно благодарно
                  0
                  Symbian*
                    0
                    хм… под UIQ3 наверное не смог бы…
                    Но могу опять же, дать API для работы с сервером. Остальное не так сложно для того, кто программирует под эту платформу.
                      0
                      В том то и проблема, что щас уже почти никто этим не занимаеться…
                      Наверное придеться самому понемногу учиться кодить вод ЮИК.
                      Иногда хороших вещей не хватает
                        0
                        Даже на оффсайте девкит к UIQ3 выпилен, а сам UIQ закрыт уже давно :(
                          0
                          Девкит есть на форумах SE
                          А юик закрыт. Я в курсе… невезуха немного :)
                  • НЛО прилетело и опубликовало эту надпись здесь
                      0
                      нет, у меня нет девайса под эту платформу.
                      Могу лишь посоветовать поискать по форумам программистов под WinMobile. API для работы с сервером я дам, а остальное дело техники — пару вечеров кодинга.
                        0
                        а под 9.3 версия будет?
                        а то эта на 9.3 может только питон обновить(((
                      0
                      жаль, что питон… так и не получилось установить его на 9.4
                        +1
                        а с чем проблемы возникают? Из обновление ПО не ставится?
                        На нем уже много чего интересного написано.
                          0
                          угум. Pyrhon 2.0 и Scribble 0.2 выдают «Сбой установки».
                          старых версий питона никогда не ставил.
                          0
                          Оу! А то что питон, я даже не заметил. Это меняет дело :)
                          (ушел искать API для SE)
                            0
                            SE у вас что то типа Satio?
                            Где то писали что мои программы на нем идут… :)
                              0
                              Нет. Приходиться довольствоватся G900
                              Хотя телефон отличный. Жаль только, что ось морально устарела не успев появиться. Много интересных вещей нету
                                0
                                Кстати, ваша прога установилась без жалоб. Но при установке сказала «фиг вам»
                                Обидно… Попробую для 9.2 поставить, когда появиться
                            0
                            Печально, что только Симбиан 9.4
                            На моем стареньком Samsung i560 (Symbian 9.2) не работает… :-(
                              +1
                              Версия под смартфоны без тачскрина уже в производстве :)
                              Хотел изначально сделать под все версии symbian, но не смог пока подобрать контролы, которые нормально бы везде смотрелись и работали. Для 9.4 сделал все вручную.
                              Скоро будет в общем…
                                0
                                Спасибо, ждем-с! :-)
                                Не забудьте, главное, пост написать об этом! :-)
                              0
                              вот еще под айфон бы такую
                                0
                                хм… habrahabr.ru/blogs/iphone/81498/
                                делал по мотивам как раз этого топика :)
                                  0
                                  ох, спасибо добрый человек! как это я его пропустил
                                  0
                                  под айфоном должен bookmate.ru в скором времени заработать
                                    0
                                    спасибо! добавлю в закладки
                                  0
                                  У меня только WAP. Будет работать?
                                    0
                                    О_о если не секрет, это какой это оператор до сих пор не поддерживает профиль internet?
                                      0
                                      Это не оператор. Это мобила от работы и фирма оплачивает только WAP. Глупо? Да, но я на это не влияю…
                                        0
                                        ну современные трубки вроде умеют http over wap, поэтому проблем быть не должно.
                                        Программе то все равно, через что идет соединение, главное чтоб работал http протокол
                                          0
                                          Да http протокол работает. Жду под 9.2
                                    +1
                                    У меня не фунциклирует. Точнее, не полностью. Поиски и «Что нового?» выдают только белый экран с кнопочками «Выбрать» и «Назад». Всё это дело происходит на 5800.
                                      0
                                      Обновления в библиотеке появляются не каждый день. Завтра возможно там будет не пусто :)
                                        0
                                        То есть библиотека сейчас совсем пустая? Поиски-то то же самое выдают.
                                          0
                                          как это пустая?! Более 130 тыс книг. Что вы найти пытаетесь?
                                            0
                                            Знаете, а теперь все в порядке :) А вчера совсем ничего не искалось. Даже Адамс из скриншота. Может, хаброэффект? :)
                                            Спасибо за чУдную прогу :)
                                      0
                                      Ну вот. С багом Вас. Nokia 6120c Неправильно опредиляется размер экрана. Я вижу надпись «XpressL» — больше по горизонтали не влазит. По вертикали виден самый верх от кнопки «Что нового».
                                        0
                                        так она только под 9.4? на радостях не заметил… А для 9.2 будет? Очень хочется :-)
                                        +1
                                        Запятая в тайтле!

                                        Буэээ, отвратительная.
                                          0
                                          Есть JAVA-аналог?
                                            0
                                            Nokia 6120c
                                            И ещё. никакие клавиши не работают. Пришлось снимать принудительно. Очень жаль — долго искал такое приложение!
                                              0
                                              читайте каменты ваше, под вашу версию symbian программа уже в разрабтке :)
                                                0
                                                уже прочёл. Ждём-с!!!
                                                0
                                                У меня на 6120 по правому софту снялось. (Да-да, я видел про 9.4, но риск дело благородное =)
                                                0
                                                а Android? Под него не планируете?
                                                  0
                                                  прога просто супер, спасибо за работу! Еще бы виртуальную клаву с русскими буквами, или просто авторов по алфавиту:)
                                                    0
                                                    да, вот еще, у меня так и не включилась большая клавиатура для набора. Вы перевернутый(landscape) режим пока не поддерживаете?
                                                      +1
                                                      Если честно, то просто было лень это реализовывать :)
                                                    0
                                                    понятно, тогда будем ждать, может еще появится:) Программа очень даже ничего, попробовал. Только, так как языка русского у меня нет, поиском заниматься довольно сложно:( Да, еще не знаю с чем это связанно, может у меня в телефонных настройках проблема, прога работает только с подключенным wlan. Но сама она к сети, например 3g подключаться не очень хочет. Но это все мелочи, спасибо за программу!
                                                      0
                                                      Nokia X6 — полет нормальный, спасибо за программу! Питон тоже встал без проблем.
                                                        0
                                                        Не качается версия под 9.4 — сайт пишет ошибку 500.
                                                        Проект ещё жив?
                                                          0
                                                          Да жив вроде ) сейчас посмотрю что там с сайтом. Сервер то работает нормально
                                                            0
                                                            Все, скачивайте, все работает.

                                                          Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                                          Самое читаемое