Ошибка рекламы «Здравмаг»!
Старый 31.01.2011, 17:40   #1
kont
Новый участник
 
Регистрация: 30.01.2015
Адрес: Земля
Поблагодарили 2 раз(а)
По умолчанию Полная база работ авторского коллектива ВП СССР (и сопутствующих)

Библиотека КОБ для Андроид


https://play.google.com/store/apps/details?id=com.yurikontik.cob_library.app


Apple:



https://itunes.apple.com/ru/app/biblioteka-kob/id850336250?mt=8
kont вне форума   Ответить с цитированием
Старый 01.12.2011, 21:59   #21
Sirin
Команда сайта
 
Аватар для Sirin
 
Регистрация: 21.10.2008
Адрес: Москва
Поблагодарили 8,592 раз(а)
Записей в дневнике: 110
По умолчанию

Кстати fb2 большинства работ уже или есть или в скором времени будет.
Может в этом направлении поковырять (т.е. в базу заносить)?

В этом направлении koldun работает - он ручками конвертирует, т.е. высококачественно.

Я ему сделал доступ, будет помогать ВСЕ РАБОТЫ ВП СССР доводить до ума.
Sirin вне форума   Ответить с цитированием
Старый 01.12.2011, 22:31   #22
Январь
Команда сайта
 
Аватар для Январь
 
Регистрация: 14.05.2009
Адрес: Москва
Поблагодарили 1,604 раз(а)
Записей в дневнике: 3
Отправить сообщение для Январь с помощью ICQ
По умолчанию

Цитата:
Сообщение от Sirin Посмотреть сообщение
Кстати fb2 большинства работ уже или есть или в скором времени будет.
Может в этом направлении поковырять (т.е. в базу заносить)?

В этом направлении koldun работает - он ручками конвертирует, т.е. высококачественно.

Я ему сделал доступ, будет помогать ВСЕ РАБОТЫ ВП СССР доводить до ума.
Я вот не понимаю - fb2 - это по сути XML, можно ли его распарсить в нечто адекватное для базы?

Можно!

Но только это вопрос на столько же принципиальный, как - а можно ли html распарсить? Можно! А можно ли текстовик распарсить? Можно! А пожно ли pdf распарсить? Можно!..

То есть вопрос то по сути не о том, как это в базу загнать - с некоторой долей автоматизации загнать получится все. Вопрос в том, как это в базе организовать, как хранить, как делать поиск...
Январь вне форума   Ответить с цитированием
Старый 01.12.2011, 22:35   #23
Sirin
Команда сайта
 
Аватар для Sirin
 
Регистрация: 21.10.2008
Адрес: Москва
Поблагодарили 8,592 раз(а)
Записей в дневнике: 110
По умолчанию

Цитата:
FB2-файл - это файл XML

FB2-документ является файлом в формате XML.

XML (англ. Extensible Markup Language — расширяемый язык разметки; произносится [икс-эм-э́л]) — рекомендованный Консорциумом Всемирной паутины язык разметки, фактически представляющий из себя свод общих синтаксических правил. XML предназначен для хранения структурированных данных, для обмена информацией между программами, а также для создания на его основе более специализированных языков разметки (например, XHTML), иногда называемых словарями.
Вроде бы то, что нужно?..
Sirin вне форума   Ответить с цитированием
Старый 01.12.2011, 22:38   #24
Январь
Команда сайта
 
Аватар для Январь
 
Регистрация: 14.05.2009
Адрес: Москва
Поблагодарили 1,604 раз(а)
Записей в дневнике: 3
Отправить сообщение для Январь с помощью ICQ
По умолчанию

блин
Январь вне форума   Ответить с цитированием
Старый 02.12.2011, 00:27   #25
Sirin
Команда сайта
 
Аватар для Sirin
 
Регистрация: 21.10.2008
Адрес: Москва
Поблагодарили 8,592 раз(а)
Записей в дневнике: 110
По умолчанию

Sirin вне форума   Ответить с цитированием
Старый 02.12.2011, 07:34   #26
Шуня
Команда сайта
 
Аватар для Шуня
 
Регистрация: 21.09.2009
Адрес: С Бажен
Поблагодарили 450 раз(а)
По умолчанию

Переводить в fb2 достаточно емкая работа, даже если использовать специальные программы, все равно надо будет руками доводить до ума. Особенно это касается сносок, я бы сказал из-за них +50% работы.
Шуня вне форума   Ответить с цитированием
Старый 02.12.2011, 09:17   #27
Январь
Команда сайта
 
Аватар для Январь
 
Регистрация: 14.05.2009
Адрес: Москва
Поблагодарили 1,604 раз(а)
Записей в дневнике: 3
Отправить сообщение для Январь с помощью ICQ
По умолчанию

Должно быть МВ самая большоая из работ ВП СССР... Всего - 1 миллион символов, в среднем на главу 35 тысяч символов.

Полнотекстовый поиск применяется максимум для полей TEXT, а это 65 тысяч символов.

На первый взгляд все подойдет, но блин - мало ли...

Думаю вот что хранить все таки целесообразнее главами... То есть с максимальной точностью детализации до глав.

То есть вот предложение - делаю таблицы: одну линейную и одну Nested Sets:

Код HTML:
.. (level - 0) Источник
.... (level - 1) Категория
...... (level - 2) Книги (+ связь с автором)
........ (level - 3) Главы
.......... (level - 4) Подразделы
Поиск по Книгам, Главам и Подразделам. По Книгам для простых ТМ, и более детально для работ вроде МВ и ОС.

Таким образом - если что-либо найдено в каком-либо подразделе - мы автоматом получаем цепочку: подраздел > глава > книга (автор) > категория.

На экран выводим:
  • навигатор по оглавлению,
  • подраздел или главу в зависимости от того, где найдено,
  • выделяем найденный фрагмент.
Таким образом у нас получается точная маска поиска (как хотел Сирин), что-то вроде: книга > глава > подраздел = 24.17.3. Далее стоит задача - как довести степень детализации до абзаца.


При парсинге текста в базу для каждой сущности (книга, глава, подраздел) содержащей текст - вставляем периоды, содержащие информацию о нумеровании абзацев, например 47 - 250 - относительно количества абзацев книги в целом. Получаем маску вида 24.17.3.99.


Сноски храним вместе с сущностями, содержащими текст, то есть выводя главу - выводим все сноски в ней использованные и показываем их как тултипы.



Вот, только такое предложение придумал.


Да, tinymce прекрасно интерпретирует в HTML текст, вставленный в него из MS Word.


http://www.tinymce.com/tryit/full.php - нажимаем кнопку "вставить из MS Word", вставляем главу из МВ, нажимаем кнопку "html" - смотрим что получилось на выходе.


Получившийся код вполне подойдет для перепарса в BBCode и последующего хранения.


... ... ...


Что делать?


1. Ну базу то сделать не тяжело.
2. Но - надо сделать еще какую-нибудь страничку, на которой постараться максимально автоматизировать перевод материалов в базу.


Этим и займусь.

... ... ...

С таким подходом мы получаем каталогизацию, которая позволяет хранить как книги, так и журналы, в том числе и "Текущие моменты", а так же отдельные статьи.

Парсинг будет авто-ручной. Но от этого вероятно уйти все равно не получится.

Что-то вроде:

1. Создается категория (если надо),
2. Создается автор (если надо),
3. Создается книга с оглавлением (по оглавлению автоматом формируются главы и подразделы),
4. Главы и подразделы наполняются содержимым (методом copy & paste из MS Word в TinyMCE).

Если книга не содержит каких-либо сложных стилистических моментов, то на добавление 1 книги будет уходить минут 5 (книги вроде МВ). 5 человек соответственно за 5 минут добавят 5 книг.

И вот еще одна мысль пришла - в принципе категории не обязательно ограничивать одним уровнем, можно еще и подкатегории сделать и подразделы подкатегорий! Например:

Код HTML:
.... (level - 1) Категория (История)
...... (level - 2) Подкатегория (Военная история)
...... (level - 2) Подкатегория (Древняя история)
...... (level - 2) Подкатегория (История КПСС)

Последний раз редактировалось Январь; 02.12.2011 в 10:22
Январь вне форума   Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо Январь за это сообщение:
Михайло Суботич (02.12.2011), Sirin (02.12.2011)
Старый 02.12.2011, 10:50   #28
Январь
Команда сайта
 
Аватар для Январь
 
Регистрация: 14.05.2009
Адрес: Москва
Поблагодарили 1,604 раз(а)
Записей в дневнике: 3
Отправить сообщение для Январь с помощью ICQ
По умолчанию

Проработка элементов стилизации книги.

Сразу лучше составить список стилизованных элементов, которые могут быть в книге.

Например:
  • Жирный шрифт,
  • Курсив,
  • indent, outdent (внешний и внутренний отступы),
  • Цитата,
  • Таблица,
  • Картинка,
  • Видео (при печати преобразуется в ссылку на видео).
Ну и т.д.

Чтобы просто потом за голову не хвататься и не делать в порядке под грифом "срочно"...
Январь вне форума   Ответить с цитированием
Старый 02.12.2011, 13:27   #29
Михайло Суботич
Команда сайта
 
Аватар для Михайло Суботич
 
Регистрация: 30.10.2008
Адрес: Подмосковие
Поблагодарили 2,728 раз(а)
По умолчанию

Цитата:
Сообщение от Январь Посмотреть сообщение
Таки опять вопрос - формулы как выводить?
Для этого есть язык формул Latex. Например, вводим
Цитата:
[latex size="1"]\left\{\begin{matrix} {X}_{1}={a}_{11}{X}_{1}+{a}_{12}{X}_{2}+ . . . +{a}_{1n}{X}_{n}+{F}_{1} \\ {X}_{2}={a}_{21}{X}_{1}+{a}_{22}{X}_{2}+ . . . +{a}_{2n}{X}_{n}+{F}_{2} \\ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . \\ {X}_{n}={a}_{n1}{X}_{1}+{a}_{n2}{X}_{2}+ . . . +{a}_{nn}{X}_{n}+{F}_{n} \end{matrix}\right. (1)[/latex]
Получаем:


Пример - О контрольных параметрах макроэкономики

Или так:
Цитата:
[latex size="2"]{K}_{i}=\frac{{s}_{i}+(p/100)\times \sum_{j=1}^{i-1}{K}_{j}}{1-(p/100)}=\frac{{s}_{i}}{1-(p/100)}+\frac{(p/100)}{1-(p/100)}\sum_{j=1}^{i-1}{K}_{j}[/latex]
Михайло Суботич вне форума   Ответить с цитированием
Сказал спасибо Михайло Суботич за это сообщение:
Январь (02.12.2011)
Старый 02.12.2011, 13:54   #30
Январь
Команда сайта
 
Аватар для Январь
 
Регистрация: 14.05.2009
Адрес: Москва
Поблагодарили 1,604 раз(а)
Записей в дневнике: 3
Отправить сообщение для Январь с помощью ICQ
По умолчанию

Ничего не понял, но это и не первый вопрос правда.

И так, мы храним в базе формулу: [latex size="1"]{K}_{i}=\frac{{s}_{i}+(p/100)\times \sum_{j=1}^{i-1}{K}_{j}}{1-(p/100)}=\frac{{s}_{i}}{1-(p/100)}+\frac{(p/100)}{1-(p/100)}\sum_{j=1}^{i-1}{K}_{j}[/latex] - при выводе на сайт ее надо преобразовать в картинку. Что именно совершает это преобразование? И на каком этапе?

...

Таблицы (типа таво):

Публикации:

Код HTML:
CREATE TABLE `jx_BookBase` (
  `node` bigint(20) unsigned NOT NULL auto_increment,
  `parent` bigint(20) unsigned NOT NULL default '0',
  `level` bigint(20) unsigned NOT NULL default '0',
  `lkey` bigint(20) unsigned NOT NULL default '0',
  `rkey` bigint(20) unsigned NOT NULL default '0',
  `hide` enum('no','yes') NOT NULL default 'no',
  `create` bigint(20) NOT NULL default '0',
  `modify` bigint(20) NOT NULL default '0',
  `type` varchar(16) NOT NULL default 'undefined',
  `author` bigint(20) unsigned NOT NULL default '0',
  `name` text,
  `text` text,
  `chapter` text,
  `A` bigint(20) NOT NULL default '0',
  `B` bigint(20) NOT NULL default '0',
  `signature` text,
  PRIMARY KEY  (`node`),
  UNIQUE KEY `Unique` (`lkey`,`rkey`,`node`,`parent`,`level`),
  UNIQUE KEY `Unique (l,r)` (`lkey`,`rkey`),
  KEY `Node (parent)` (`parent`),
  KEY `Node (level)` (`level`),
  KEY `Node (lkey)` (`lkey`),
  KEY `Node (rkey)` (`rkey`),
  KEY `Node (hide)` (`hide`),
  KEY `Node (create)` (`create`),
  KEY `Node (modify)` (`modify`),
  KEY `Node (type)` (`type`),
  KEY `Node (author)` (`author`),
  KEY `Period` (`A`,`B`),
  KEY `A` (`A`),
  KEY `B` (`B`),
  KEY `General` (`parent`,`level`,`lkey`,`rkey`,`hide`,`create`,`modify`,`type`,`author`,`node`,`A`,`B`),
  FULLTEXT KEY `FullText (name)` (`name`),
  FULLTEXT KEY `FullText (text)` (`text`),
  FULLTEXT KEY `FullText (signature)` (`signature`)
) ENGINE=MyISAM  DEFAULT CHARSET=cp1251;
Авторы:

Код HTML:
CREATE TABLE `jx_AuthBase` (
  `node` bigint(20) unsigned NOT NULL auto_increment,
  `hide` enum('no','yes') NOT NULL default 'no',
  `create` bigint(20) NOT NULL default '0',
  `modify` bigint(20) NOT NULL default '0',
  `name` varchar(64) NOT NULL default 'undefined',
  PRIMARY KEY  (`node`),
  KEY `General` (`hide`,`create`,`modify`,`name`,`node`),
  KEY `Node (hide)` (`hide`),
  KEY `Node (create)` (`create`),
  KEY `Node (modify)` (`modify`),
  KEY `Node (name)` (`name`)
) ENGINE=InnoDB  DEFAULT CHARSET=cp1251;

Последний раз редактировалось Январь; 02.12.2011 в 14:21
Январь вне форума   Ответить с цитированием
Ответ
Опции темы
Опции просмотра



Часовой пояс GMT +3, время: 06:40.


Здравмаг.рф - магазин духовного и физического здоровья! Rambler's Top100