Skip to content

aligusnet/books

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is catalogizer for epub library. There is detailed description in russian below.
Wiki of the project: https://github.com/ialexander/books/wiki

Requitments:
* lxml: easy_install lxml
* Snowball stemming for Python: http://snowball.tartarus.org/download.php. Unzip PyStemmer-1.1.0.tar.gz and install: python setup.py build && python setup.py install. For details see README of the library.

Important Notice for Mac OS X with Xcode 4. Xcode 4 are no longer support PPC arch, so disable PPC: export ARCHFLAGS='-arch i386 -arch x86_64'. Otherwise you'll get compuiler error like this: 'fatal error: error writing to -: Broken pipe'.

Brief description:

* catalogizer.pu source_dir target_dir
Catalogize library from source_dir to target_dir.

* index.py source_dir
Create inverted index.

* search.py source_dir keywords
Search books by inverted index

*epub.by
Parser epub files.

* rpcserver.py path/to/lib
Start rpc-server. path/to/lib - path to indexed lib. 

*rpcclient.py
simple, test client for rpcserver.py

-------------------------------------------

Каталогизация электронной библиотеки в формате epub и информационный поиск в ней.
Для более подробной информации смотрите wiki проекта: https://github.com/ialexander/books/wiki

Использование и описание:

Зависимости:
* Библиотека lxml. Если еще не установлена, выполните команду: $ easy_install lxml
* Snowball stemming for Python: http://snowball.tartarus.org/download.php. Распакуйте PyStemmer-1.1.0.tar.gz и установите командами: python setup.py build && python setup.py install. Подробности смотрите в файде README библиотеки.

Важное замечание для Mac OS X с установленным Xcode 4. Т.к. Xcode 4 больше не поддерживает архитектуру PPC, отключите ее командой: export ARCHFLAGS='-arch i386 -arch x86_64'. Иначе получите ошибку компиляции вроде этой: 'fatal error: error writing to -: Broken pipe'.

* catalogizer.py source_dir target_dir
Обходит все книги epub в каталоге и подкаталогах epub и вытаскивает из метаданных название книги и имя автора. Размещает книги в target_dir/первая буква фамилии автора/полное имя автора/название книги.epub

* index.py source_dir
Создает поисковый индекс по авторам и названиям книг epub в source_dir. Автора и название берет из метаданных книги. В дальнейшем, наверное, добавлю в индекс описание книги из метаданных и язык.

* search.py source_dir ключевые слова
Ищет с использованием предварительно созданного индекса index.py.

* epub.py
Парсер книг формата epub. На данный момент считывает автора, название и язык произведения. 

* rpcserver.py path/to/lib
В аргументе указывается путь к директории с проиндексированной библиотекой. Для запуска используются параметры из config.py: RpcServerHost - имя хоста и RpcSeverPort - номер порта. Подробнее о предназначении и использовании rpcserver см. web/README

*rpcclient.py
Простой, тестовый клиент для rpcserver.py. Для подключения к серверу использует параметры config.py. 

About

This is catalogizer for epub library.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages