coolwolf0 - Северный наблюдатель (coolwolf0) wrote,
coolwolf0 - Северный наблюдатель
coolwolf0

Дыбр - самоделкину не сидится

Так получилось, что вопросы резервного копирования я решаю как-то очень кустарно: единственные данные, которые жалко потерять (семейные фото-видео) тупо сдублированы на разных внешних дисках. Остальные коллекции раскиданы по трем внешним дискам и двум компьютерам в произвольном виде. А это музыка, электронные книги, аудио-книги (АКА "подкасты"), фильмы...

Да, искать их приходится редко, но зато какой геморрой: надо подключить все три диска, перерыть их в поисках нужного файла, чертыхнуться что кое-где он встречается по нескольку раз, потом полезть на локальные диски...

Короче говоря, мне эта история надоела. Тупое сканирование и сохранение полученного списка в виде текста - хороший вариант, но хотелось бы какой-то дополнительной автоматизации. Например, найти файл, сдублированный на нескольких дисках. Или наоборот, увидеть файлы, не имеющие дубликатов. А заодно иметь красивый и единый интерфейс для всех видов коллекций, всякие отчеты, даты индексирования... Вот для этого и была сделана нулевая версия приложения, которое индексирует коллекции и показывает их через веб-интерфейс. Всё написано на Пайтоне (кроме бат-файлов под Виндоzе) с применением уже ставшего традиционным объектного API по формированию SQL-запросов. В качестве базы данных выбран самый простецкий вариант sqlite3 - он даже на смартфонах работает. Дабы не стрелять из пушки по воробьям, никаких веб-библиотек не использую - ни AngularJS ни виджетов, ничегошеньки - голый HTML + CSS. Весь дизайн (художественная часть) нагло сворован с джимейла и гугло-поиска.

На данный момент синтегрированы два основных компонента: веб-сервер и генератор отчетов. Кроме того имеется базовый класс для ведения любой коллекции, поддерживающий "всасывание" проиндексированных данных. Следующие этапы, перед релизом "половинной" версии: переход на цифровые ID для элементов коллекции (позволит упростить ссылки), разделение операции индексации и обновления данных на два независимых процесса (с передачей pickle-файла по TCP), решение проблем юникода в поисковых операциях, базовые административные функции. После этого можно сделать какие-то украшательства в отчетах, дописать парочку недостающих отчетов и можно считать первый пре-релиз готовым к использованию. Параллельно планируется перевести коллекцию фильмов из текстового каталога в ту же базу данных (а за ней и аудиокниги, музыку, ...). Если будет время и желание - приделаю авторизацию сессий (для защиты от дурака, предотвращения вандализма извне, и вообще - для порядка). И да, не забыть дописать "уборку мусора", как в связанных таблицах, так и в самих данных sqlite - его файлы имеют тенденцию к распуханию. В идеале надо бы прикрутить туда и систему оповещений-напоминаний: какие носители давно не индексировались, какие данные надо сдублировать...

Чисто формально вся эта красота уже воплощена в виде двух независимых серверов (два проброшенных порта из-под одного внешнего IP-адреса), только бегут они как сервисы на домашних компьютерах, которые не всегда включены, поэтому ссылки тут давать не буду (однако дети уже начали пре-бета тестирование).
Subscribe

  • Рецензии - сегодня только кино

    Сериалы (видео в интернете) 7-я серия " Савта бишла" Две пары: из Ирана и Курдистана. Восточная кухня во всей своей красе: много…

  • Рецензии - визуал и немного звука

    Видео в интернете Масяня идёт в ногу со временем. Во-первых, это уже давно не 100% авторская продукция, а финансируемая патреоном. Во-вторых,…

  • Рецензии - почти все жанры

    Начну с необычного Концерты Вчера были на концерте тенора Феликса Лившица, причём концерт - посвящение Валерию Ободзинскому Ободзинский, не…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 0 comments