MyHomeLib: Генератор INPX для MyHomeLib - MyHomeLib

Перейти к содержимому

  • (7 Страниц)
  • +
  • 1
  • 2
  • 3
  • Последняя »
  • Вы не можете начинать новые темы
  • Вы не можете отвечать в этой теме

Генератор INPX для MyHomeLib Еще один генератор списков для MyHomeLib

#1 Пользователь не на сайте   rupor Значок

  • Профи
  • PipPipPipPip
  • Группа: Разработчики
  • Сообщений: 79
  • Регистрация: 01-September 09
  • LocationUSA

Отправлено 01 September 2009 - 05:05 PM

Предлагаю вашему вниманию command line генератор списков для MyHomeLib (начиная с версии 1.5). Надеюсь кому-нибудь понадобится.

Полное описание программы и история версий теперь находятся в MyHomeLib Wiki - http://wiki.home-lib...%BE%D1%82_rupor

Линки на последнюю версию:

http://www.assembla....2inpx-win32.rar
http://www.assembla....2inpx-win64.rar
3

#2 Пользователь не на сайте   vladk Значок

  • Newbie
  • PipPipPip
  • Группа: Users
  • Сообщений: 32
  • Регистрация: 09-September 09

Отправлено 14 October 2009 - 09:49 AM

А zip файлы с архивами сканируются только в папке указанной в --archives или во вложенных папках тоже?
0

#3 Пользователь не на сайте   rupor Значок

  • Профи
  • PipPipPipPip
  • Группа: Разработчики
  • Сообщений: 79
  • Регистрация: 01-September 09
  • LocationUSA

Отправлено 15 October 2009 - 12:30 AM

Только в указанной директории.
0

#4 Пользователь не на сайте   vladk Значок

  • Newbie
  • PipPipPip
  • Группа: Users
  • Сообщений: 32
  • Регистрация: 09-September 09

Отправлено 15 October 2009 - 10:57 AM

Вот всплыло - для fb2 архивов в комментарии к inpx ставится "0", а д.б. "65536"...
0

#5 Пользователь не на сайте   rupor Значок

  • Профи
  • PipPipPipPip
  • Группа: Разработчики
  • Сообщений: 79
  • Регистрация: 01-September 09
  • LocationUSA

Отправлено 15 October 2009 - 09:35 PM

Просмотреть сообщениеvladk, 15 October 2009 - 10:57 AM, сказал(а):

Вот всплыло - для fb2 архивов в комментарии к inpx ставится "0", а д.б. "65536"...


Поскольку программа создает INPX файлы для либрусека, то и ставит она то, что положено для либрусек'а. Сначала ставила действительно 65536, а потом меня попросили поправить. Так что здесь все работает как запланированно. Никаких посторонних коллекций в принципе не планировалось. Может вы опишете сценарий применения - глядишь, что-нибудь и придумаем...
0

#6 Пользователь не на сайте   vladk Значок

  • Newbie
  • PipPipPip
  • Группа: Users
  • Сообщений: 32
  • Регистрация: 09-September 09

Отправлено 16 October 2009 - 05:54 AM

Просмотреть сообщениеrupor, 15 October 2009 - 09:35 PM, сказал(а):

Просмотреть сообщениеvladk, 15 October 2009 - 10:57 AM, сказал(а):

Вот всплыло - для fb2 архивов в комментарии к inpx ставится "0", а д.б. "65536"...


Поскольку программа создает INPX файлы для либрусека, то и ставит она то, что положено для либрусек'а. Сначала ставила действительно 65536, а потом меня попросили поправить. Так что здесь все работает как запланированно. Никаких посторонних коллекций в принципе не планировалось. Может вы опишете сценарий применения - глядишь, что-нибудь и придумаем...

Позволю процитировать из ЛС:

koreec сказал(а):

код коллекции неверно указан (3-я строка в комментарии)
для фб2 должно быть 65536 для usr 65537 ; 0,1 - для пользовательских коллекций

А в итоге, созданные коллекции не имеют (напр.) кнопки "Скрыть удаленные на либрусек". :(
0

#7 Пользователь не на сайте   koreec Значок

  • Владелец
  • Группа: Администраторы
  • Сообщений: 1064
  • Регистрация: 01-September 09
  • LocationCheju

Отправлено 16 October 2009 - 06:24 AM

так, вношу ясность:
1) при создании fb2 коллекции либрусека штатными средствами (Визард - Локальная коллекция либрусек) код НЕ НУЖЕН.
Если создавать коллекцию из inpx (другая библиотека) - тогда нужен, но это неправильный способ.
2) для списков usr код нужен всегда. ну он там и есть вроде.

Просьба ко всем - при возникновении проблем или непоняток с программой четко формулировать, ЧТО ИМЕННО ВАМ НУЖНО во избежание недоразумений.
не говорите что мне делать, и я не скажу, куда вам пойти!
0

#8 Пользователь не на сайте   vladk Значок

  • Newbie
  • PipPipPip
  • Группа: Users
  • Сообщений: 32
  • Регистрация: 09-September 09

Отправлено 16 October 2009 - 06:49 AM

Тогда может я чего не понимаю. Я хочу иметь самую свежую версию либрусека в myhomelib путем загрузки ежедневных обновлений с либрусека. Как я понял, для этого и служит программа lib2inpx ув. rupor'a с соотв. cmd скриптами. Но в результате получается файл inpx отличный от того, что создается не менее ув. koreec'ом :rolleyes: . Вот мне, как пользователю прекрасной программы MyHomeLib :rolleyes: :rolleyes: и хочется вкусить все прелести, предоставляемые ею (программой).
Или мне нужно делать что-то по другому?
0

#9 Пользователь не на сайте   rupor Значок

  • Профи
  • PipPipPipPip
  • Группа: Разработчики
  • Сообщений: 79
  • Регистрация: 01-September 09
  • LocationUSA

Отправлено 17 October 2009 - 02:25 AM

Скорее это я чего-то не понимаю. Какая разница похожи файлы или нет? Я встроенными в MyHomeLib средствами update не пользуюсь и INPX "от Алексея" не гружу никогда. Зачем?

Вот что я делаю (ежедневно, при помощи task scheduler - конечно когда Либрусек работает):

  • Загружаю ежедневные updates с Либрусека (в добавление к архивам типа fb2-000024-030559.zip и дневным архивам, загруженным раньше).
  • Загружаю последний MYSQL - тоже с Либрусека.
  • Генерю INPX при помощи lib2inpx с обработкой локальных архивов.
  • Добавляю полученный файл типа libruseq_20091009.inpx в MyHomeLib в виде "другой" коллекции (видимо это неправильно - как и указал Алексей, но мне так удобно).
  • Копирую сгенеренный из полной базы Либрусек (без обработки архивов) LIBRUSEQ.INPX на место "оригинального", от Алексея
  • Пересоздаю "online" коллекцию Либрусека в Myhomelib


Я правда делаю еще пару - тройку шагов, но они абсолютно несущественны. Например я удаляю из ежедневных либрусековских updates все не-fb2 файлы так как хранение и использование их мне не интересно. Еще время от времени из накопившихся либрусековских updates я генерю новый fb2-xxxx-xxxxx.zip примерно 2ГБ размера, а из вошедших туда ежедневных архивов при этом удаляю все книжки - остаются 22 байтные архивчики, просто чтобы не грузить их с Либрусека снова.

То, о чем Алексей говорил выше, можно взять сгенеренный lib2inpx файл типа libruseq_20091009.inpx, переименовать в libruseq.inpx, положить на место оригинального и пересоздать обе "локальную" и "онлине" коллекции Либрусека - и будет вам счастье, которое вы ищете.

Все это прекрасно работает и довольно несложно. Впрочем если есть пожелания или предложения как lib2inpx улучшить - высказывайте, это интересно. Может добавить параметр какой код в коментарии генерить?
0

#10 Пользователь не на сайте   koreec Значок

  • Владелец
  • Группа: Администраторы
  • Сообщений: 1064
  • Регистрация: 01-September 09
  • LocationCheju

Отправлено 17 October 2009 - 02:31 PM

Я вспомнил про некоторые недокументированные функции, которые можно использовать для облегчения работы с ежедневными архивами. речь идет о механизме, аналогичном extra обновлениям для онлайн-коллекции. В этом случае коллекция не пересоздается каждый раз заново, а только добавляются новые записи, что существенно ускоряет процесс.

Что нужно:
1) файл inpx содержащий только inp для дейли архивов. файл нужно переименовать, например, в daily_update.zip
2) небольшой тюнинг MyHomeLib
Создаем файл update.ini рядом с остальными ini файлами. В него добавляем строки

[UPDATES]
"Локальная коллекция Либрусек";"";"last_daily.info";"daily_update.zip";"0";"65536";


P.S. За работоспособность не ручаюсь, раньше понедельника проверить не смогу
не говорите что мне делать, и я не скажу, куда вам пойти!
0

#11 Пользователь не на сайте   rupor Значок

  • Профи
  • PipPipPipPip
  • Группа: Разработчики
  • Сообщений: 79
  • Регистрация: 01-September 09
  • LocationUSA

Отправлено 18 October 2009 - 01:07 PM

Если это работает - я подумаю как добавить к генератору возможность создавать такие файлы. Например можно будет указывать параметром с какого дневного update начинать. А в update.ini можно указывать полный путь к архиву или только имя?
0

#12 Пользователь не на сайте   koreec Значок

  • Владелец
  • Группа: Администраторы
  • Сообщений: 1064
  • Регистрация: 01-September 09
  • LocationCheju

Отправлено 18 October 2009 - 01:11 PM

только имя. сам файл должен лежать в рабочей папке (рядом с librusec.inpx).
не говорите что мне делать, и я не скажу, куда вам пойти!
0

#13 Пользователь не на сайте   rupor Значок

  • Профи
  • PipPipPipPip
  • Группа: Разработчики
  • Сообщений: 79
  • Регистрация: 01-September 09
  • LocationUSA

Отправлено 18 October 2009 - 05:09 PM

Версия 2.4 - добавлена возможность задания файлов с шаблонами (templates) для INPX комментариев - см. comment_fb2.utf8 и comment_usr.utf8 в архивах программы для примера.

Просмотреть сообщениеkoreec, 18 October 2009 - 01:11 PM, сказал(а):

только имя. сам файл должен лежать в рабочей папке (рядом с librusec.inpx).


Алексей, а что должно быть в файле "last_daily.info"? И можно ли сделать не "daily_update.zip", а скажем "daily_update_170000-1800000.INPX"?
0

#14 Пользователь не на сайте   koreec Значок

  • Владелец
  • Группа: Администраторы
  • Сообщений: 1064
  • Регистрация: 01-September 09
  • LocationCheju

Отправлено 19 October 2009 - 01:05 AM

Цитата

можно ли сделать не "daily_update.zip", а скажем "daily_update_170000-1800000.INPX"?

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

Цитата

что должно быть в файле "last_daily.info"?
ничего. это имя файла на сервере обновлений.

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

#15 Пользователь не на сайте   koreec Значок

  • Владелец
  • Группа: Администраторы
  • Сообщений: 1064
  • Регистрация: 01-September 09
  • LocationCheju

Отправлено 19 October 2009 - 01:40 AM

все, можно пользоваться.
вносить изменения в настройки не надо, все уже внутри.
Имя файла должно быть daily_update.zip
не говорите что мне делать, и я не скажу, куда вам пойти!
0

#16 Пользователь не на сайте   vladk Значок

  • Newbie
  • PipPipPip
  • Группа: Users
  • Сообщений: 32
  • Регистрация: 09-September 09

Отправлено 19 October 2009 - 03:54 AM

Просмотреть сообщениеrupor, 17 October 2009 - 02:25 AM, сказал(а):

Может добавить параметр какой код в коментарии генерить?

Я еще не пробовал новые версии lib2inpx и myhomelib, может теперь это и не актуально, но по поводу параметра - в lib2inpx ведь есть "--process arg. What to process - "fb2", "usr", "all" (default: fb2)". Вот сюда и можно добавить типа "fb2lib[rusec]" или как-то покороче.
0

#17 Пользователь не на сайте   rupor Значок

  • Профи
  • PipPipPipPip
  • Группа: Разработчики
  • Сообщений: 79
  • Регистрация: 01-September 09
  • LocationUSA

Отправлено 19 October 2009 - 09:34 AM

Просмотреть сообщениеvladk, 19 October 2009 - 03:54 AM, сказал(а):

Просмотреть сообщениеrupor, 17 October 2009 - 02:25 AM, сказал(а):

Может добавить параметр какой код в коментарии генерить?

Я еще не пробовал новые версии lib2inpx и myhomelib, может теперь это и не актуально, но по поводу параметра - в lib2inpx ведь есть "--process arg. What to process - "fb2", "usr", "all" (default: fb2)". Вот сюда и можно добавить типа "fb2lib[rusec]" или как-то покороче.


Версия 2.4 - смотрите в readme, параметр называется comment. Правда теперь даже без этого параметра будет генерится то, что вам нужно - но, как указал Алексей, это совершенно не существенно.
0

#18 Пользователь не на сайте   rupor Значок

  • Профи
  • PipPipPipPip
  • Группа: Разработчики
  • Сообщений: 79
  • Регистрация: 01-September 09
  • LocationUSA

Отправлено 20 October 2009 - 08:34 PM

Версия 2.6 - создание daily_updates.zip. См. параметр --update в readme.txt или на Wiki.
0

#19 Пользователь не на сайте   vladk Значок

  • Newbie
  • PipPipPip
  • Группа: Users
  • Сообщений: 32
  • Регистрация: 09-September 09

Отправлено 25 November 2009 - 06:40 AM

Делаю как сказано в read.me (кстати там опечатка? в примере использования --update стоит process usr):

Цитата

C:\vc\book\fb2lib\myhomelib\lib2inpx\lib2inpx.exe --no-import --update 173787-173859 --process fb2 --archives w:\librusec C:\vc\book\fb2lib\myhomelib\lib2inpx\librusec

***ERROR: Unable to locate daily archive "173787-173859.zip"
Не удается найти указанную метку пакетного файла - fin

Если я в --update указываю полный путь, то ошибки нет, но daily_update пустой.
0

#20 Пользователь не на сайте   rupor Значок

  • Профи
  • PipPipPipPip
  • Группа: Разработчики
  • Сообщений: 79
  • Регистрация: 01-September 09
  • LocationUSA

Отправлено 26 November 2009 - 01:49 AM

Просмотреть сообщениеvladk, 25 November 2009 - 06:40 AM, сказал(а):

Делаю как сказано в read.me (кстати там опечатка? в примере использования --update стоит process usr):

Если я в --update указываю полный путь, то ошибки нет, но daily_update пустой.


Там вообще-то логика довольно простая:

При старте путь из --archives комбинируется со строкой из --update и добавляется ".zip. T.e. в вашем случае должно получиться "w:\librusec\173787-173859.zip" после чего проверяется, если у вас есть read-only доступ к этому файлу. Если нет (или файла нет или путь неправильный) - выдается ошибка, которую вы и наблюдаете. До реальной обработки архивов здесь дело не доходит.

Указывать в update полный путь довольно бессмысленно, так как реальная обработка архивов происходит все равно с путем из --archives. Там создается список всех файлов, сортируется, из него удаляется все лишнее, а потом строка из --update используется, чтобы найти первый обрабатываемый файл. В вашем случае (с полным путем) программа очевидно ничего не находит - вот вы и получаете пустой daily_update.zip

"Не удается найти указанную метку пакетного файла - fin" указывает на то, что вы используете коммандный файл. Я бы проверил внимательно пути, передаваемые в программу, особенно подозрительным для меня выглядит факт того, что при передаче полного пути в --updates нет ошибки. По идее должен получиться совершенно неправильный путь.

В readme.txt действительно опечатка, так как ранее указано, что опция update работает только в fb2 режиме, я исправлю, спасибо.
0

Сообщить об этой теме:


  • (7 Страниц)
  • +
  • 1
  • 2
  • 3
  • Последняя »
  • Вы не можете начинать новые темы
  • Вы не можете отвечать в этой теме

2 пользователей читают эту тему
0 зарегистрированных, 2 гостей, 0 скрытых