[{{mminutes}}:{{sseconds}}] X
Пользователь приглашает вас присоединиться к открытой игре игре с друзьями .
Ctrl предыдущая следующая Ctrl Страницы
1 2

Форум «Программное обеспечение» / Функция парсера книг

Fenex Сообщение #1 13 января 2019 в 00:12
Клавомеханик
49
Выложена в доступ функция, разбивающая книги на отрывки, а также необходимый инструмент для изменения и тестирования новых алгоритмов.

Установка, настройка и запуск описаны в самом репозитории: https://github.com/klavogonki-dev/vocbook-split

Попробуйте свои силы в улучшении алгоритма!
Phemmer Сообщение #2 13 января 2019 в 13:43
Супермен
71
http://klavogonki.ru/u/#/231371/journal/56...bf62de3768b4567 тут список самых частых замен, которые следует произвести над заливающейся книгой. Может пригодится.
Сударушка Сообщение #3 14 января 2019 в 15:47
Организатор событий
65
К сожалению, программировать не умею.
Могу лишь сформулировать некоторые моменты, которые, на мой взгляд, было бы неплохо, чтобы были реализованы.

Что касается окончания отрывков на знаках отличающихся от точки и их корректного отображения, не знаю, вероятно, это проблема не парсера книг, а в целом КГ.
Очень хотелось бы, чтобы она была решена.
Если этот момент преодолен быть не может, при делении на знаках ? ! ... ?.. !..
при заливке словарей-книг, добавлять принудительную точку в конце отрывка для правильного отображения знака препинания.
________________________________________________

Реализовать функцию премодерации книг до осуществления заливки.
Сообщать о следующих моментах:
1) В случае наличия Аннотации в начале, Примечаний (notes) в конце автору заливки предлагать их убрать.
2) В заливаемой книге количество символов незначительно (менее 10%) недостает до книг 100к, 300к, 600к, 1000к.
3) Предоставление всех случаев неотображаемых в Публичных словарях символах (в контексте встречаемых соседних слов).
________________________________________________

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

В случае, если предложения (отрывки) слишком большие, производить принудительное деление на отрывки по каким-либо из этих знаков:
?» !» ...» ; ,

с добавлением точки в конце, если данный момент в книгах ли, на КГ ли не может быть преодолен.
________________________________________________

Исключить перенос в разные отрывки инициалов, сокращений типа т. д., т. п., т. е. и др.
Для английского языка исключить окончание отрывка на сокращениях Mr., Mrs., Dr. и возможно, других.

________________________________________________

При разбиении на отрывки исключить случаи деления, когда новый отрывок начинается с
"– слово с маленькой буквы" во избежание разрыва части диалога.
А также "слово с маленькой буквы".

Пример:
– Правда? Сразу видно, что вы не здешний!
новый отрывок
– проговорил доктор. – Завтракать будете?

Правильный вариант разбиения:
– Правда? Сразу видно, что вы не здешний! – проговорил доктор.
новый отрывок
– Завтракать будете?


Аналогично, было бы хорошо, чтобы при разбиении не отрывались от абзаца отрывки размером, скажем, менее 15 символов.

Пример:
– Вязовая улица, – пробормотал он. И оттолкнулся еще раз. – Пересечение с Мерцающей.
новый отрывок
Да.
Он вернулся.
До улицы Паточной Шахты было рукой подать...

Правильный вариант разбиения:
– Вязовая улица, – пробормотал он. И оттолкнулся еще раз. – Пересечение с Мерцающей. Да.
новый отрывок
Он вернулся.
До улицы Паточной Шахты было рукой подать...
Последний раз отредактировано 14 января 2019 в 15:48 пользователем Сударушка
Сударушка Сообщение #4 14 января 2019 в 15:49
Организатор событий
65
Позже попробую сформулировать описательным алгоритмом, как делить книги на отрывки.

Для этого, Fenex, прошу ответить на несколько вопросов.

1. Можно ли ожидать решения данной проблемы.
Что касается окончания отрывков на знаках отличающихся от точки и их корректного отображения, не знаю, вероятно, это проблема не парсера книг, а в целом КГ.
Очень хотелось бы, чтобы она была решена.


2. Планируется ли реализация возможности чтения книг в формате, желаемом клавогонщиками, - 5-ти, 10-ти минутных марафонов?

3. Возможна ли при наборе книги реализация отображения части предыдущего текста (конец последнего отрывка), а также части последующего (начала следующего).
Последний раз отредактировано 14 января 2019 в 17:06 пользователем Сударушка
Fenex Сообщение #5 15 января 2019 в 03:09
Клавомеханик
49
Сударушка писал(а):
1. Можно ли ожидать решения данной проблемы.
Что касается окончания отрывков на знаках отличающихся от точки и их корректного отображения, не знаю, вероятно, это проблема не парсера книг, а в целом КГ.
Очень хотелось бы, чтобы она была решена.

Алгоритм разбивки должен реализовывать адекватную разбивку книги без учёта каких-либо сторонних факторов, за исключением особых модификаторов, например, приватный/публичный словарь. В общем, если завершать отрывки знаками "!", "?", "." логично, то следует так и делать.

Сударушка писал(а):
2. Планируется ли реализация возможности чтения книг в формате, желаемом клавогонщиками, - 5-ти, 10-ти минутных марафонов?

Да, но разбивать на отрывки всё равно надо.

Сударушка писал(а):
3. Возможна ли при наборе книги реализация отображения части предыдущего текста (конец последнего отрывка), а также части последующего (начала следующего).

В теории возможно сделать, но пока не будет переделываться страница заезда /g/, говорить об этом рано.
Последний раз отредактировано 15 января 2019 в 13:12 модератором Fenex
legitimate_GONE Сообщение #6 20 января 2019 в 18:31
Супермен
30
Сам книги не загружал и не набирал, может поэтому не понимаю.. есть рабочий алгоритм, в чем он должен быть усовершенствован?
С чем он не справляется?
Сударушка Сообщение #7 20 января 2019 в 19:05
Организатор событий
65
legitimate писал(а):
Сам книги не загружал и не набирал, может поэтому не понимаю.. есть рабочий алгоритм, в чем он должен быть усовершенствован?
С чем он не справляется?

Как минимум с перечисленными моментами.
А также в алгоритм может быть встроена предварительная подготовка книги, как сказано здесь.
Сейчас она осуществляется не всеми заливающими книги, что приводит иногда к косякам в книгах.
legitimate_GONE Сообщение #8 21 января 2019 в 01:03
Супермен
30
Для предварительной подготовки книги Phemmer всё что нужно сделал (расписал пункты и написал программу) эту программу переписать на php очень легко.
С 1-6 пункт использовать str_replace для пробелов и переносов, с 7-11 регулярку для поиска нестандартных символов (опять же готова). Поэтому наверняка эта проверка предварительная будет включена в функционал сайта. Тут проблем возникнуть не должно.


Сударушка Сообщение #9 21 января 2019 в 10:30
Организатор событий
65
legitimate писал(а):
Для предварительной подготовки книги Phemmer всё что нужно сделал (расписал пункты и написал программу) эту программу переписать на php очень легко.

Эта часть на php переписана Наконец-то достаточно давно http://www.mobintech.ru/cleaner/.
Просто я ответила на твой вопрос.

В части деления книг кроются основные моменты, требующие решения.
Учитывая, что пользоваться памяткой памяткой Phemmer'а труда особого не составляет.
Очевидно, что мой список не полный.
Набирающие книги, вероятно, могли бы его пополнить.
Последний раз отредактировано 21 января 2019 в 10:34 пользователем Сударушка
legitimate_GONE Сообщение #10 22 января 2019 в 12:09
Супермен
30
при клонировании много нужных файлов не установилось, лучше вручную устанавливать
Последний раз отредактировано 22 января 2019 в 18:36 пользователем legitimate_GONE
Fenex Сообщение #11 22 января 2019 в 18:02
Клавомеханик
49
legitimate писал(а):
настраиваю эти 3 пункта, не работает

"эти" - это какие?

`parser.php` должен быть вручную скопирован из папки /parsers/ (любой php файл на выбор)
`autoloader.php` должен быть на месте в обязательном порядке, вместе с другими классами.

Об этом написано в инструкциях к запуску в README.md. step-by-step делал?
legitimate_GONE Сообщение #12 24 января 2019 в 16:17
Супермен
30
Что klavogonki.php что sample.php - делают одно и тоже - делят книгу на отрывки, какой еще нужен алгоритм?) что бы это делать тремя способами?)
Количество символов на которые делить отрывки регулируется (сейчас на сайте это фиксированная длина?), код убирающий неправильные символы и лишние пробелы тоже есть.
Последний раз отредактировано 24 января 2019 в 16:17 пользователем legitimate_GONE
Душа_Чата Сообщение #13 24 января 2019 в 17:06
Маньяк
2
Sul поделил бы все на /0
Advisor Сообщение #15 1 октября 2021 в 03:25
Тахион
64
Так как за корректировку книг, судя по всему, отвечаю теперь я, есть пока один вопрос: как контролировать длину отрывков? То есть как не допустить того, чтобы при заливке книги каждый текст не вышел под 750 знаков например. А чтобы отрывки были значительно короче.
СереНат Сообщение #16 1 октября 2021 в 08:55
Гонщик
31
Мне кажется, на вас никто не возлагал эту ответственность (вы, видимо, сами решили ее на себя возложить). И, насколько я знаю, корректировкой книг занимается редакторский отдел. Вас в их списке нет. Если вы про заливку/перезаливку, то это немного другое. Это может делать каждый игрок КГ при наличии Премиума. По поводу принудительного деления отрывков ничего сказать не могу, этим Сударушка занималась. Стандартные отрывки не будут по 750, они идут примерно по 450-480 (насколько помню) - это можно в любом словаре посмотреть/посчитать.
Advisor Сообщение #17 1 октября 2021 в 13:59
Тахион
64
СереНат, так получилось, что именно возложили. Более того, не по моей просьбе. Просто на форуме стали появляться сообщения, что раз Сударушка по собственной воле решила уйти с проекта, то теперь пусть Адвизор занимается этим. Я гарантировал, что без турниров проект не останется. Будет много крутых и интересных турниров. Также меня не раз спрашивали (и в заездах, и на форуме): «Тебе и книжками теперь заниматься придется, ведь кто их теперь будет корректировать и добавлять?» — вот и займусь, нет проблем. Тем более какой-никакой опыт уже есть, да и для КГ я рад стараться.

Насчет отрывков — хорошо, если так. А то я помню добавлял какую-то книгу, а отрывки там вышли очень большие.
sqwerty Сообщение #18 1 октября 2021 в 14:40
Супермен
29
Advisor, ты немного запутался в хронологии событий:
1) Адвизор пообещал, что возьмет на себя функции организатора, в случае ухода Сударушки с проекта. Вот пруф. А в этом сообщении ты подтвердил серьезность своих намерений:

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

2) И уже оталкиваясь от слов Адвизора, пользователи начали интересоваться: "а возьмется ли он и за корректировку книг - работу, которую выполняла Сударушка". Кстати, можно перейти по этой ссылке и убедиться в том, что книги она действительно заливала. Я насчитал 258 (нужно включить сортировку по автору заливки). А вот где можно посмотреть количество отредактированных книг, которые были залиты другими пользователями, я не знаю.
Последний раз отредактировано 1 октября 2021 в 14:42 пользователем sqwerty
Advisor Сообщение #19 1 октября 2021 в 14:42
Тахион
64
sqwerty, если Сударушка продолжит свое дело касаемо корректировки и заливки книг — буду только рад. Это снимет с меня груз ответственности и объема задач.
Espera Сообщение #20 1 октября 2021 в 14:52
Супермен
84
Advisor писал(а):
СереНат, так получилось, что именно возложили. Более того, не по моей просьбе.


Как было сказано, корректировкой книг по сообщениям об ошибках (и не только) на Клавогонках занимается группа редакторов. И они вас о помощи не просили.
Но вы можете заливать новые книги на КГ: это право, данное премиум-аккаунтом любому клавогонщику; корректировать собственные залитые на КГ книги, как также уже было сказано, также может любой клавогонщик.
Последний раз отредактировано 1 октября 2021 в 16:19 пользователем Espera
Сударушка Сообщение #21 1 октября 2021 в 15:03
Организатор событий
65
sqwerty писал(а):
А вот где можно посмотреть количество отредактированных книг, которые были залиты другими пользователями, я не знаю.

Такого списка относительно других редакторов нет, но они все вместе отредактировали на так много книг.

Но такой список, благодаря Doctorisimus, в отношении книг, откорректированных мной, есть.
Таких книг – 177.
Список откорректированных Сударушкой книг.
Корректировка книг – процесс гораздо более трудоемкий и сложный, чем их заливка в традиционном формате КГ.
Думаю, треть или даже более залитых мной книг, залиты в формате предварительной обработки, что также является весьма трудоемким и непростым процессом.
Сердечно благодарю Phemmer'а и Fenex'а, что помогли мне частично автоматизировать этот процесс.
Последний раз отредактировано 1 октября 2021 в 15:14 пользователем Сударушка

Чтобы писать в форуме, нужно зарегистрироваться.

Ctrl предыдущая следующая Ctrl Страницы
1 2

Связаться
Выделить
Выделите фрагменты страницы, относящиеся к вашему сообщению
Скрыть сведения
Скрыть всю личную информацию
Отмена