DocTheEbook: BookLibrary/Podgruzka ...
Поиск:
Наблюдать | Версия для печати | Вход:   Пароль:  

Часть. Подгрузка файлов, пришедших по фидошным файл-эхам BOOK, BOOK-DOP, 957HELP и 957SHEMA


Блок «Обслуживание файлов»


ВВЕДЕНИЕ


Программ Book_Library заточена под фидошные книжные файл-эхоконференции. Да и как иначе? В тексте обычно от нескольких сот до пары миллионов всяких букв и слов, как определить – где там автор, где название книги или сериала? У файлов с сайта Мошкова первой строкой идет автор и название (но на той же строке около полукилобайта служебных символов). На Альдебаране – наоборот, в первой строке идет название, а на 3 или даже 5 строке – автор (причем имя и фамилия могут стоять в разном порядке). У Луки Бомануара – первым идет сериал. Ну и так далее. Как определить – какое слово считать именем автора, какое – фамилией? Где начинается и заканчивается название произведение или сериала? Для программы задача невыполнимая. Именно поэтому в основу для книжных фэх Фидо заложен строгий принцип наименования файлов и структуры описания в файле FILES.BBS (поскольку этот файл формируется у всех подписчиков фидошным софтом, то задача создания FILES.BBS и не ставилась, за ненадобностью).
А структура такова (это забито в правила фэхи):



взято из BOOK.RUL (правила фэхи BOOK)



5. Большую часть проходящих по файлэхе текстов обрабатывает специально обученная этому программа Book_Lib, поэтому название файла и дескрипшин в TIC и FILES.BBS должны удоволетворят определенным условиям.
Hазвание файла из 8 знаков: 6 прописных (заглавных) латинских букв (пять – фамилия автора, шестая – имя), два последних знака – сквозной порядковый номер файла. Hапример,
SIDORP01.RAR – Петр “P” Сидорчук “SIDOR” 01 файл.
Если фамилия меньше 5 букв – разницу дополнять знаком “_" (BLON_G01.RAR – Жорж Блон).
Описание (дескрипишн в .tic):
первая часть – Имя Фамилия ( через пробел) или Инициалы.Фамилия (точка без пробела).
вторая часть – название произведения. Для 01 файла название заключается в кавычки (для последующих это не принципиально).
третья часть (не обязательная) – название сериала или цикла – в круглых скобках и кавычках, после знака # – номер данной книги в сериале, например:
MAY__K01.RAR Карл Май «Виннету» ("Виннету" #1) [1.02.03]
четвертая часть – жанровая принадлежность в квадратных скобках
[1.02.03], где цифровой код классификатора выбирается из перечня жанровых классификаторов по Приложению 1 (в конце текста «Правил...»).
В архив с текстом вкладывается FILE_ID.DIZ, в котором первая строка повторяет строчку Desc из. TIC, а последующие несут любую другую служебную информацию о файле (включая выходные данные книги/сайта, ник оцифровщика, анонс и т.д.)
Помните, файлы не удоволетворяющие этим условиям – будут отбракованы для ручной обработки, и потому могут вовсе не попасть в поисковые системы фэхи BOOK.



конец цитаты из BOOK.RUL



Как в FILES.BBS программ отличает имя от фамилии? Очень просто, имя идет первым, а сразу после фамилии стоит сочетание – либо «пробел-кавычка», либо «точка-пробел». А если точка без пробела или пробел без точки, то перед ней – инициалы или имя (И.И.Иванов., Иван Иванов., Иван И.Иванов. ) Поэтому на словах «И. Иванов» – программ ошибется обязательно.
Кто может предложить другой алгоритм, чтобы можно было вытащить имя-фамилию-название – с любого сайта? Покажите, обязательно вставлю в программу.


Поэтому проще всего подгружать файлы в базу программы, прошедшие по фидошным файл-эхам. Существует 3 режима:
Полуавтоматическая подгрузка книг в базу из файл-эх без файлов обновления;
Полуавтоматическая подгрузка книг в базу из файл-эх с файлами обновления базы;
Ручной режим подгрузки любых файлов.


Подгрузка книг в базу из файл-эх без файлов обновления


Режим полуавтоматической подгрузки предполагает, что новинки книг, пришедшие по файл-эхам:
1. Лежат (скопом) в одном каталоге, путь к которому прописан в Book_ Lib.ini (переменная FilesBBS). Причем общее количество не должно превышать 1000 файлов на одну подгрузки (ибо буфер не безразмерный). А идеально – 200–600 файлов (от недельного до месячного трафика всех фидошных книжных файл-эхоконференций).
2. В том же каталоге имеется файл описаний – FILES.BBS, в котором перечислены архивы всех книжек со строкой, содержащей
NAMEFILE.RAR АВТОР. НАЗВАНИЕ ПРОИЗВЕДЕНИЯ («СЕРИАЛ» #НОМЕР) [КОД ЖАНРА]
(кодировка DOS – т.е. 866 таблица)


Вначале любым файл-менеджером (без Book_Library) проверяем сам каталог, из которого программа будет черпать новые файлы.
Наиболее удобно пользоваться FAR-ом:
http://doc.the-ebook.org/BookLibrary/files&get=book_l01.jpg


Затем убеждаемся, что FILES.BBS не содержит явных ошибок и пропусков в описаниях.


http://doc.the-ebook.org/BookLibrary/files&get=book_l011.jpg


Убедившись, что тут – все в порядке, запускаем BOOK_Library


Сначала появляется информация о текущей версии программы, номере и дате последнего обновления
http://doc.the-ebook.org/BookLibrary/files&get=bl301.jpg
Затем – основной экран программы.
http://doc.the-ebook.org/BookLibrary/files&get=book_l02.jpg


Далее «Обслуживание файлов» – «Сортировка новинок»
На экране возникает окно «Настройка сортировки файлов»


http://doc.the-ebook.org/BookLibrary/files&get=book_l03.jpg


Вот тут пользователь должен определиться: будет ли он вести собственную базу файлов, либо доверится «эталону», для которого еженедельно по основной фидошной фэхе BOOK идут дополнения к базе (записи авторов, циклов и собственно – файлов, проскочивших на предыдущей неделе).
Если поставить «галочку» в позиции «Подгрузка только файлов, пришедших в обновлениях BOOK_L», то те книги, записей о которых пока нет в базе – останутся нетронутыми, а в обработку и раскидывание по подкаталогам пойдет только то, что в базе уже имеется (прогружено из BOOK_L, но об этом – в следующей главе).
В противном случае – программа обработает и раскидает ВСЕ файлы, найдет новых авторов и предложит прогрузить их базу. Если пользователь согласится, то начнутся расхождения (по нумерации авторов и файлов) и в дальнейшем – BOOK_L прогружать нельзя (записи могут лечь «внахлест»).
Дополнительная «поднастройка» этого режима – куда переносить узнанные файлы, сразу в коллекцию или в некий временный каталог (чтобы предварительно еще раз просмотреть – что куда разложено)?


Второй режим – «Галочка» снята, появилось сообщение «Подгружаем все необработанные файлы».


Поднастройка второго режима заключается лишь в указании програмее – что делать с файлом в общем каталоге /BOOK/. Предположим, среди обновлений появился второй файл некого автора и потому для него будет создан отдельный авторский каталог. Так что с первым то делать? Переносить его туда же или оставить как есть?
Собственно, эта поднастройка нужна лишь для случая, когда коллекция лежит на CD, и потому переносы просто невозможны.


Далее рассмотрим самый сложный случай – Режим обработки ВСЕХ файлов.


Когда с режимами определились – нажимаем саму «Сортировку»
http://doc.the-ebook.org/BookLibrary/files&get=book_l04.jpg


Программа определила, что в «файл-эхном» каталоге 104 файла (FILES.BBS, BOOK.RUL и DESCRIPT.ION – она не учитывает) и начала сортировку.


Архивы, уже имеющихся в базе авторов (по названию файла), программа определяет сразу и переносит их во временный каталог TMPBOOK (определенный в настроечном Book_ TMP.ini), а описание для него читает из FILES.BBS.
Эта группа отражается в окне «Узнанные файлы».


Вторая категория – тексты авторов, которые пока не представлены в базе. Принадлежность к тому или иному жанру определяется по жанровому классификатору из того же FILES.BBS. Файлы-одиночки помещаются в общие подкаталоги \BOOK.ALL\, а если книг несколько, для них создается авторский подкаталог в названии которого (окончание) присутсвует. NEW. Желательно после первого прогона предварительной обработки – их переименовать таким образом, чтобы новые каталоги не пересекались по названиям с уже имеющимися в коллекции.
Вторая группа отражается в окне «Узнанные жанры»


Если встретится неизвестный файл, не имеющий аналогов в базе и без описания в FILES.BBS, программа оставит его без движения и отразит в окне «Неизвестные файлы».


Дупы, то есть файлы, описание которых уже имеется в базе – переносятся не в TMPBOOK, а в каталог DUPE. Впрочем, структура подкаталогов – как это записано в базе – полностью сохраняется. В дальнейшем, подгружающий должен сам решить – что делать с этими файлами:
1. если запись о файле есть (получена из обновлений), а самого файла действительно нет – переписать его в основную коллекцию;
2. если дубль – действительно ошибочный, то есть архив с таким названием существует, но в нем совсем другое произведение – исправить название архива (и поправить запись в FILES.BBS) и прогрузить заново;
3. если же в дубле – исправленная версия текста (или полная версия, против имеющегося в коллекции фрагмента) – то перезаписать его поверх старого.
Эта категория отражается в окне «Дубли»


Самое нижнее окно содержит список файлов тех авторов, у которых до момента подгрузки в базе числилось всего одно произведение (лежавших в общих подкаталогах \BOOK.ALL\). С приходом нового текста – создается авторский подкаталог, для новых файлов, а если в предыдущем окне была включена соответствующая настройка, то заодно и основной базе создается аналогичный подкаталог, куда переносится старый файл.


http://doc.the-ebook.org/BookLibrary/files&get=book_l07.jpg


По окончании сортировки появится предупреждение об этом. А программа возвратится в исходный режим – Меню «Обслуживание файлов».


В этот момент целесообразно запустить один раз «Передобработку отсортированного» – чтобы BOOK_Library привела в порядок вновь сформированные FILES.BBS в авторских и общих подкаталогах, и тут же выйти из этого блока.
http://doc.the-ebook.org/BookLibrary/files&get=book_l09.jpg


А вслед за этим – вновь вернуться в FAR (или другой файл-менеджер) – посмотреть, чего же там программа насортировала.
Как видим, каталог, откуда черпались архивы – пуст, а вот временный TMPBOOK – совсем наоборот: в нем появились жанровые каталоги, внутри которых авторские и общие подкаталоги.
http://doc.the-ebook.org/BookLibrary/files&get=book_l08.jpg


Перед преобработкой отсортированного желательно пройтись по каждому новому авторсому подкаталогу и заглянуть в FILES.BBS, в поисках возможных ошибок.


Вот и первая ошибка: в базе автор Борис Алмазов значится без отчества, а в исходном FILES.BBS – он был с отчеством «Александрович». Программа такое слово не знает и потому – оставила без изменений. Если его не удалить – слово «Александрович» войдет в название произведения.
http://doc.the-ebook.org/BookLibrary/files&get=book_l10.jpg


Прибиваем «Александрович» в редакторе FAR-а, а вот – выносить ли его в шапку (и соответствующим образом поправить запись в базе – раздел «Авторы» – на усмотрение пользователя).


http://doc.the-ebook.org/BookLibrary/files&get=book_l11.jpg


Следущий пункт – тот самый каталог. NEW, о котором предупреждала программа в режиме сортировки.


Каталог Павла Ивановича Мельников-Печерского. Переименовываем его в MELNIKV.P-I.
http://doc.the-ebook.org/BookLibrary/files&get=book_l12.jpg
Еще одна ошибка – в базе Геннадий Прашкевич, а с фэхой пришел Г.Прашкевич. Удаляем лишнюю букву.


http://doc.the-ebook.org/BookLibrary/files&get=book_l13.jpg


Итак, в FAR-е все исправили, возвращаемся в BOOK_Library. Режим «Передобр. отсортированного»
http://doc.the-ebook.org/BookLibrary/files&get=book_l09.jpg
Просматриваем окно «Новые авторы», если грубых ошибок не замечено: имена не «уехали» в фамилии, а в «фамилиях» – один человек, а не группа из двух-трех (такое бывает, если авторов в FILES.BBS больше двух), то жмем клавишу «Включить авторов»


http://doc.the-ebook.org/BookLibrary/files&get=book_l14.jpg
Точно также просматриваем окно с сериалами, если и там все в порядке – нажимаем «Включить циклы»


http://doc.the-ebook.org/BookLibrary/files&get=book_l15.jpg
Одновременно формируются подгрузочные файлы AUTH.NEW и CICLE.NEW (для загрузки обновления на ДРУГИХ копиях программы)


http://doc.the-ebook.org/BookLibrary/files&get=book_l16.jpg
Таким образом, новые авторы и названия новых сериалов – уже попали в основную базу. Теперь необходимо еще раз нажать «Старт», чтобы программа сформировала подгрузочный файл для основной базы – с реальными (новыми) авторами и сериалами для каждой записи.


Вот теперь, после получение такого сообщения – можно запускать режим «Просмотр и подгрузка»
(Если по каким-либо причинам подгружать новинки в базу не требуется, но нужен подгрузочный файл для каталога – нажимаем клавишу «Изготовление подгрузочного файла». Во втором случае – записи о новых файлах в базу не попадут)


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


http://doc.the-ebook.org/BookLibrary/files&get=book_l17.jpg


Клавиша «Подгрузить все» – загружает эти записи в базу и формирует подгрузочный файл CATALOG.NEW (для загрузки обновления на ДРУГИХ копиях программы. Для пользователей – одиночек файлы NEW можно прибить или использовать как своего рода – лог прогруженного).


http://doc.the-ebook.org/BookLibrary/files&get=book_l18.jpg


Появление предупреждающего окна свидетельствует о корректном обновлении базы программы. Теперь необходимо перейти в файл-менеджер FAR и покаталожно перенести все новинки из временного каталога TMPBOOK в основную коллекцию.


При переносе файлы FILES.BBS нужно ДОПИСЫВАТЬ. Это важно, иначе можно прибить предыдущие записи по старым файлам.


http://doc.the-ebook.org/BookLibrary/files&get=book_l19.jpg


Завершающий аккорд – составление сводного листинга обновленной коллекции.


http://doc.the-ebook.org/BookLibrary/files&get=book_l20.jpg


«Обслуживание файлов» – «Создание файл-листинга»


Если в процессе создания файл-листинга встретится файл без описания в соответствующем FILES.BBS, то программа сообщет об этом в окне «Авторские каталоги» и текстовом файле ERROR.TXT, который сформируется в основном каталоге программы \BOOK_LIB\.


Полуавтоматическая подгрузка книг в базу из файл-эх по файлам обновления базы;


Еженедельно по фэхе BOOK (понедельник/вторник) проскакивает файл обновления базы для программы BOOK_Library. Он называется BOOK_L00.RAR (где 00 – порядковый номер обновления).


Подгрузка новых авторов, циклов и собственно – описания файлов:


Переписать файлы *.[номер_обновления] в каталог с установленной системой BOOK_Library, далее: «Обслуживание файлов» -> «Подгрузка обработ. файлов» -> «Hачать подгрузку».

http://doc.the-ebook.org/BookLibrary/files&get=bl302.jpg


Прогружать их нужно именно в той последовательности, как они перенумерованы, иначе может возникнуть путаница с принадлежностью файлов к определенным авторам и появится вот такое предупреждение:
http://doc.the-ebook.org/BookLibrary/files&get=book_l22.jpg


После успешной подгрузки обновлений – начинаем выполнять весь ритуал, описанный в 1 разделе этой главы – вплоть до режима «Сортировка новинок» (его тоже отрабатываем, только нужно поставить «галочку» «Подгрузка обновлений из BOOK_L), а вот последующие действия – нужно пропустить, поскольку все новинки будут разложены по своим подкаталогам – либо в самой коллекции (и программ автоматически допишет FILES.BBS), либо во вспомогательном каталоге DUPE\. В последнем случае необходимо FAR-ом нежно перенести файлы в основную коллекцию (аккуратно, дописывая FILES.BBS).


Алгоритм обновления библиотеки


По заранее скачанным файлам недостающих книг


1. скачать новый files.bbs со всей стурктурой
http://www.the-ebook.org/e107/download.php?view.23


2. развернуть этот архив поверх имеющейся библиотеки, будут добавлены новые каталоги


3. скачанные файлы разместить в каталог, прописанный в файле book_lib.ini в переменной FilesBBS. Проверить наличие в этом каталоге файла files.bbs


4. последовательная закачка обновлений в библиотеку. Внимание – перескакивать через номера обновлений нельзя – только последовательно.


4.1. требуемое обновление описано в файле bookl_xx.rar, который должен лежать вместе с приехавшими. Разархивируем этот файл в каталог с программой book-lib


4.2. запустить book-lib


4.3. выполнить пункт меню «Обслуживание файлов» – «Подгрузка обратот.файлов» кнопка внизу «начать подгрузку»


4.4. подгрузить файлы-классификаторы (CLASS?.BAS). Выполнить пункт меню
«Изменения и дополнения базы» – «Полная перезагрузка из BAS» – отметить «Жанр», «Поджанр», «Соотв. Жанров» и нажать <Еnter>


4.5. Сортировка новинок. Выполнить пункт меню:
«Обслуживание файлов» – «Сортировка новинок». Настройки по умолчанию менять не нужно. В результате в каталоге DUPE будет создана структура библиотеки с новыми книжками.


4.6. Копируем новые книжки поверх старой базы данных. Лучше пользоваться Far-ом и командой append когда предлагается скопировать имеющиеся files.bbs.


4.7. Проверка отсутствующих файлов. Выполнить пункт меню
«Обслуживание файлов» – «Сравнение базы с файлами». Полученные файлы не были скачаны, не попали в базу и их нужно где-то брать.


4.8. Новые книжки уже можно искать, просматривать распаковывать.
4.9. закрыть book-lib


4.10. убрать файлы с расширением *.bak, *.bas и файл anons.txt


4.11. перейти к следующему обновлению – начать с п.4.1.


Ручной режим подгрузки любых файлов.


Эта часть документации пока в работе


$erge писал(а):
BookLib не создаёт FILES.BBS и File_Id.Diz, и следовательно, без этих файлов книга в базу не попадёт. Поэтому для простых смертных, качающих книжки с обычных сайтов, в которых нет файлов File_Id.Diz, автоматическая подгрузка книг в базу невозможна. Даже полу-автоматическая. :) Без файла File_Id.Diz ничего не работает.


Возможна. Файлы то не с неба берутся – и попадают в базу. Я ведь писал эту программу именно для того, чтобы себе же и облегчить работу по разгребанию книжек. То есть раньше (до написания BOOK_Lib) у меня обработку недельного постинга уходило


Alexandr Tovchigrechko 2:5020/113.71 писал(а):
1) Собиpаюсь в subj затолкать стаpые файлы, пpошедшие давно по фэхе, а я их все давно пеpеаpхивиpовал в rar и тепеpь они не pаспознаются.


Заменить расширения в базе – очень просто. Hужно выгрузить основной файл базы в txt (верхнее меню – «Изменение базы» – «Выгрузка базы» – отметить позиции «Основной файл» и «Анонсы» – «Hачать конвертацию»).
Затем можно выйти из программы. В каталоге BOOK_LIB появятся текстовые файлы Catalog.txt и ANONS.TXT. С помощью программы FAR (или любым DOS-редактором текста, не ломающим строки) провести глобальную замену “.HA” на “.RAR”, “.ARJ” на “.RAR” и “.ZIP” на “.RAR” в Catalog.txt и ANONS.TXT, потом переименовать Catalog.txt в Catalog.bas, запустить программу и прогрузить исправленную базу – сначала «Изменение и дополнение» – «Полная переподгрузка из 'BAS'" – отметить «Осн.Каталог" – «Старт", затем в меню «Изменения и дополнения» – пункт «Анонсы из ANONS.TXT”.
После этого в базе все файлы будут с расширением. RAR


 

Яндекс.Метрика