Полтора года назад бессменный администратор библиотеки «Флибуста» Стивер объявил, что ему недолго осталось. Хоть я и неактивный читатель, я решил, что на всякий случай стоит заиметь собственную копию. Благо народ на торрентах раздаёт качественные снапшоты. Объём гигантский однако, так что для скачивания мне пришлось проапгрейдить план Comcast.
В сыром виде Флибуста представляет собой набор из 395 файлов в формате ZIP, каждый в среднем 3 гигабайта. Внутри находятся файлы с абстрактными именами - собственно книжки. Плюс дополнительный ZIP архив с метаинформацией, из которой можно узнать название книги, автора, язык, жанр и другое. В сумме примерно 806000 записей.
Всё это дело хранилось у меня на диске, ждало своего времени. Разгрести эту кучу вручную невозможно. Но вчера на досуге вдруг возникла мысль: ведь теперь есть неленивый помощник в виде ИИ. Пусть он займётся разгребанием хламовника. Но надо дать ему какую-то начальную живопырку.
Народ наделал для формата Флибусты некоторое количество вспомогательного софта, и один из них (freeLib) оказался полезным. Я установил freeLib на маке, вызвал - запускается. Спрашивает, где на диске лежит Флибуста, сканируем её всю и создаёт базу данных в формате SQLite. Размером 427 мегабайт, не хухры мухры. Прекрасно, ровно то что нужно!
Я дал Курсору исходники freeLib и файл базы freeLib.sqlite. Он тут же сделал прекрасное описание схемы базы: Database.md. И смастерил тулзу (на Golang) для поиска по базе.
Я считаю, Флибуста представляет собой ценный исторический артефакт. Не Александрийская библиотека, конечно, но 680000 книг тоже неплохо. Удивительно, но до сих пор не проводилось никаких исследований её с научной точки зрения.
В сыром виде Флибуста представляет собой набор из 395 файлов в формате ZIP, каждый в среднем 3 гигабайта. Внутри находятся файлы с абстрактными именами - собственно книжки. Плюс дополнительный ZIP архив с метаинформацией, из которой можно узнать название книги, автора, язык, жанр и другое. В сумме примерно 806000 записей.
Всё это дело хранилось у меня на диске, ждало своего времени. Разгрести эту кучу вручную невозможно. Но вчера на досуге вдруг возникла мысль: ведь теперь есть неленивый помощник в виде ИИ. Пусть он займётся разгребанием хламовника. Но надо дать ему какую-то начальную живопырку.
Народ наделал для формата Флибусты некоторое количество вспомогательного софта, и один из них (freeLib) оказался полезным. Я установил freeLib на маке, вызвал - запускается. Спрашивает, где на диске лежит Флибуста, сканируем её всю и создаёт базу данных в формате SQLite. Размером 427 мегабайт, не хухры мухры. Прекрасно, ровно то что нужно!
Я дал Курсору исходники freeLib и файл базы freeLib.sqlite. Он тут же сделал прекрасное описание схемы базы: Database.md. И смастерил тулзу (на Golang) для поиска по базе.
Главное здесь: режим extract. Из Флибусты извлекаются все книжки одна за одной, и разкладываются в указанном месте по папкам в два уровня:$ ./flib flib — search the freeLib SQLite catalog Usage: flib show PATTERN [--max NUM] Search books by title (regular expression). Default --max is 20. flib extract [--destdir DIR] Extract books into language/author/book.format tree. flib by author List all books grouped by author (tab-separated columns). flib by genre List all books grouped by genre. flib by language List all books grouped by language. flib help Show this message Environment: FLIB_DB Path to freeLib.sqlite (default: ~/Documents/freeLib.sqlite) FLIB_PATH Path to Flibusta library root with zip archives (required for extract)
язык/автор/название.форматПолный список всех получившихся файлов, полученный командой tree, занимает 59 мегабайт. Выглядит так:
.
├── ad
│ └── Автор Неизвестен -- Мифы. Легенды. Эпос. Сказания
│ └── Нартхэр.pdf
...
├── en
│ ├── Аноним
│ │ └── Diary of an Oxygen Thief.epub
│ ├── Библия
│ │ ├── От Марка святое благовествование[Параллельный перевод].fb2
│ │ ├── Евангелие от Иоанна[Параллельный перевод].fb2
│ │ ├── Holy Bible: New International Version (NIV).fb2
│ │ ├── Holy Bible. New Revised Standard Version (NRSV).fb2
│ │ ├── The Bible - New International Version.fb2
│ │ ├── The Gospel according to John[Good News Translation ( GNT Bible )].fb2
│ │ └── The New Jerusalem Bible(rtf).zip
...
├── ru
│ ├── АБ
│ │ └── Московская история.fb2
...
├── uk
│ ├── Алай
│ │ └── Коли курява спаде.fb2
│ ├── Алкей
│ │ └── Золоте руно. З античної поезії[Збірка].djvu
│ ├── Антология
│ │ └── Львівська антологія. Том I. Від давніх часів до початку ХХ ст..fb2
│ ├── Аристотель
│ │ ├── Нікомахова етика.fb2
│ │ ├── Метафізика.fb2
│ │ └── Поетика.fb2
│ ├── Аристофан
│ │ └── Комедії.fb2
...
└── zh
...
├── Лао-цзы
│ ├── 道德经.fb2
│ └── Dàodé jīng.fb2
└── Сунь-цзы
└── The Art of War (chinese).fb2
154598 directories, 680883 files
Суммарный объём всех книг в распакованном виде - 1.6 Tбайт.Я считаю, Флибуста представляет собой ценный исторический артефакт. Не Александрийская библиотека, конечно, но 680000 книг тоже неплохо. Удивительно, но до сих пор не проводилось никаких исследований её с научной точки зрения.

no subject
Date: 2026-04-27 18:05 (UTC)Простая универсальная помогалка для каталогизации электронных книжек тоже хороший проект выходного дня.