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

Форум «Общий» / Создание универсального парсера для соревнований

nosferatum Сообщение #82 11 февраля 2014 в 18:09
Супермен
32
До рабочего еще далековато, а текущие доработки буду постепенно (и, надеюсь, часто) обновлять на сервере.

Был бы еще народ в программерской команде — дело двигалось бы куда быстрее :)
Задачи принципиально несложные, но писать/тестировать нужно много.
Последний раз отредактировано 11 февраля 2014 в 18:16 пользователем nosferatum
nosferatum Сообщение #83 12 февраля 2014 в 22:39
Супермен
32
Проект перерефакторен под maven и разделен на серверную и веб-часть.
Последний раз отредактировано 12 февраля 2014 в 22:41 пользователем nosferatum
nosferatum Сообщение #84 13 февраля 2014 в 03:24
Супермен
32
http://5.9.201.108:8080/kgparser-web-1.0/h...2014_02_11.html
к этому графику добавлены кнопки "Скрыть всех" и "Показать всех" и фильтры по присутствующим рангам. Просьба желающих потестировать работу графика.

Update: Найден баг:
- нажимаем "Скрыть всех", потом "Показать всех", потом применяем фильтр по рангам — падает JS-ошибка и график не обновляется.
- если после этого нажать "Скрыть всех" и применить фильтр по рангам — фильтр работает.

Update 2: Баг исправлен (принудительным скрытием всех перед фильтром по рангам).
Последний раз отредактировано 13 февраля 2014 в 14:36 пользователем nosferatum
MMMAAANNN Сообщение #85 13 февраля 2014 в 15:08
Супермен
36
nosferatum писал(а):
http://5.9.201.108:8080/kgparser-web-1.0/h...2014_02_11.html
к этому графику добавлены кнопки "Скрыть всех" и "Показать всех" и фильтры по присутствующим рангам. Просьба желающих потестировать работу графика.

Update: Найден баг:
- нажимаем "Скрыть всех", потом "Показать всех", потом применяем фильтр по рангам — падает JS-ошибка и график не обновляется.
- если после этого нажать "Скрыть всех" и применить фильтр по рангам — фильтр работает.

Update 2: Баг исправлен (принудительным скрытием всех перед фильтром по рангам).

Красиво.

А можно такой запрос - чтобы геометрические фигурки-метки в пределах рангов были максимально разнообразнее? Допустим, при фильтре "маньяков" их отображается шесть человек, из них у четырех - треугольник "вверх", хотя можно было бы кому-то присвоить круг, кому-то - треугольник "вниз".
nosferatum Сообщение #86 13 февраля 2014 в 15:21
Супермен
32
MMMAAANNN писал(а):
А можно такой запрос - чтобы геометрические фигурки-метки в пределах рангов были максимально разнообразнее? Допустим, при фильтре "маньяков" их отображается шесть человек, из них у четырех - треугольник "вверх", хотя можно было бы кому-то присвоить круг, кому-то - треугольник "вниз".


Для этого нужно разобраться в документации к Highcharts. Если там у series можно принудительно задавать тип маркера (скорее всего можно) — то твое предложение реализуемо.

Update: задание типа для точек на графике найдено. Насколько быстро будет работать для графиков с большим числом точек — не знаю.

Update 2: создал ишью в проекте, чтобы не забыть об этом пожелании. Сейчас задача неприоритетная.
Последний раз отредактировано 13 февраля 2014 в 20:06 пользователем nosferatum
nosferatum Сообщение #87 16 февраля 2014 в 12:49
Супермен
32
Итак, выложил на сервер альфа-версию приложения.

Здесь находится список загруженных соревнований.

Здесь можно загрузить новое соревнование. Формат — zip-файл, в корне которого лежат json-файлы заездов, сохраненные скриптом voidmain. Если внезапно распарсилось пустое соревнование (показывается 0 заездов) — убедитесь, что json файлы лежат в корне zip-файла.
На всякий случай поясню — загружать можно любой набор заездов, независимо от режимов и количества заездов. Хоть дуэль среди 2 игроков (кстати, думаю обработку дуэли сделать отдельным типом обработки).

Если парсинг прошел успешно, то просмотреть соревнование можно будет на странице соревнования (например, Кювет №55).

Из списка заездов по ссылке в столбце «номер заезда» можно перейти к странице информации о заезде, (например, заезд №1 в Кювете №55). «Количество набранных символов» для игроков актуально для марафона, где оно может быть различным. Автор книги и название книги выводятся для тех режимов, для которых они присутствуют.

Из обработок пока доступны только график скоростей по заездам и график количеств ошибок по заездам.

Вопросы, пожелания, конструктивная критика и сообщения о багах приветствуются.

---------------------------------------------------------------------------
FAQ

Q: На графике присутствует линия моих результатов, однако в легенде справа от графика моего ника нет.
A: Ники в легенде справа отсортированы по алфавиту. В зависимости от разрешения экрана и количества игроков в соревновании ники в легенде могут разбиваться по страницам. Чтобы проскроллить до других страниц легенды, воспользуйтесь стрелочками под легендой.

Q: Обязательно ли сохранять json-файлы соревнования под именами 1.json, 2.json итд?
A: Нет, имена файлов не имеют значения. Порядок заездов определяется на основании времени начала заезда (это поле присутствует в json-файле). Единственное, лучше не делать имена файлов содержащими русские символы и пробелы.

Q: При загрузке zip-файла с соревнованием выдается ошибка вида "java.lang.IllegalStateException: Cannot get dictionary info for dictionary code = "voc-75875"
A: Пока для получения названия словаря по его коду используются данные из статистики пользователя nosferatum. Если в этой статистике нет словаря, который присутствует в соревновании, то выдастся подобная ошибка. Для исправления ее попросите меня проехать заезд в этом словаре.

Q: Zip-файл распарсился, но в соревновании нет ни одного заезда.
A: Json-файлы должны находиться в корне zip-файла, иначе они не распарсятся. При этом в поддиректории zip-файла можно положить другие нужные файлы (например, сохранить html-ки заездов для истории).
Последний раз отредактировано 28 февраля 2014 в 16:11 пользователем nosferatum
AvtandiLine Сообщение #88 16 февраля 2014 в 15:08
Кибергонщик
61
Спасибо большое. Всё прекрасно и воодушевительно! Багов не заметила.

Конечно, остаются пожелания, принципиально не_соответствующие планам разработчиков, ну тут уж как пользователь могу только вздохнуть и смириться. ))
(1. Формат прямо для закачки в Excel, вместо json-файлов. 2. Возможность запускать парсер у себя на компьютере.)
nosferatum Сообщение #89 16 февраля 2014 в 15:18
Супермен
32
Элеонора Алексеевна,

1. Формат прямо для закачки в Excel, вместо json-файлов.

Поясните, какие Excel-файлы Вы имеете в виду? Подавать их на вход, вместо сохраненных скриптом voidmain json-файлов? Или подразумевается скачивание результатов в Excel-формате?

2. Возможность запускать парсер у себя на компьютере.

Веб-приложение имеет следующие плюсы:
- обновляется сразу у всех;
- единая база данных для хранения соревнований.

Можно, конечно, запускать сервер с веб-приложением парсера у себя на компьютере (хотя это нетривиальная (но решаемая) задача для рядового пользователя), но тогда теряется суть в единой базе данных всех соревнований.
Последний раз отредактировано 16 февраля 2014 в 15:18 пользователем nosferatum
AvtandiLine Сообщение #90 16 февраля 2014 в 15:29
Кибергонщик
61
nosferatum писал(а):
Поясните, какие Excel-файлы Вы имеете в виду? Подавать их на вход, вместо сохраненных скриптом voidmain json-файлов? Или подразумевается скачивание результатов в Excel-формате?

И то, и другое. Но хотя бы первое. Потому что скриптами не пользуюсь: и без того компьютер (либо интернет) еле тянет. :)
nosferatum писал(а):
Веб-приложение имеет следующие плюсы:
- обновляется сразу у всех;
- единая база данных для хранения соревнований.

Да, кто ж бы спорил. Это большие, просто огромные плюсы.
Но локально, без Интернета, не посмотришь, и масштаб не изменишь, и вообще всегда мысль, что посторонний сайт может исчезнуть.

nosferatum писал(а):
Можно, конечно, запускать сервер с веб-приложением парсера у себя на компьютере

Да зачем мне веб-приложение парсера )) именно совсем без Интернета нравится больше. Впечатление большей устойчивости и доступности. :)

Но в #88 просто уж напоследок посокрушалась, и не более того. :) Вздохнуть и смириться, искренне. Каковы есть планы и концепция в целом, так и хорошо. Получается, на самом деле, очень здОрово.

upd 16:06
Уже и по ошибкам график добавили.
Темпы впечатляют так же сильно, как само сделанное. :)
Последний раз отредактировано 16 февраля 2014 в 16:08 пользователем AvtandiLine
nosferatum Сообщение #91 16 февраля 2014 в 16:13
Супермен
32
AvtandiLine писал(а):
nosferatum писал(а):
Поясните, какие Excel-файлы Вы имеете в виду? Подавать их на вход, вместо сохраненных скриптом voidmain json-файлов? Или подразумевается скачивание результатов в Excel-формате?

И то, и другое. Но хотя бы первое. Потому что скриптами не пользуюсь: и без того компьютер (либо интернет) еле тянет. :)


Входящие Excel-файлы:
Видимо, имеются в виду Excel-файлы с результатами от парсера ДИгоревича?

По ним есть следующие моменты:
- В json скрипт от voidmain сохраняет гораздо больше информации, чем можно достать из html-файлов (что делает парсер ДИгоревича). Например, это текущие показатели (пробег, средняя скорость) игрока по словарю, дата начала события и т.д.;

- Перед тем, как получить excel-файл от ДИгоревича, нужно сохранить html-файлы заездов, потом запустить парсер в опредленном формате и вот так получить Excel, формат которого зависит от выбранного соревнования.

Переговоры с ДИгоревичем по поводу универсальной выдачи его парсером данных для моего приложения я вел, но т.к. быстро добавить не получилось, то пока я сосредоточился на более полной по данным версии с json-файлами. Вполне вероятно, что в дальнейшем наши парсеры будут состыкованы.

Выгрузка таблиц в формат Excel:
Конечно, будет. Сейчас приложение в самой-самой начальной, черновой версии.

Потому что скриптами не пользуюсь: и без того компьютер (либо интернет) еле тянет. :)

Если Ваш компьютер тянет тяжелый скрипт, рисующий highchart-графики, то легенький скрипт сохранения json-ов он потянет заведомо :)
Последний раз отредактировано 16 февраля 2014 в 16:18 пользователем nosferatum
AvtandiLine Сообщение #92 16 февраля 2014 в 16:20
Кибергонщик
61
Если Ваш компьютер тянет тяжелый скрипт, рисующий highchart-графики, то легенький скрипт сохранения json-ов он потянет заведомо :)

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

P.S. Опять же, это просто для пояснения исходных позиций.
Спасибо за ответы.
Подожду, не буду суетиться. Увидим, как будет развиваться Ваше приложение, может все нервные предположения сами собой отпадут, я же не программист, а пользователь, не_могу предвидеть будущую картину. :)

P.P.S.
Входящие Excel-файлы:
Видимо, имеются в виду Excel-файлы с результатами от парсера ДИгоревича?

Ой. Тысяча извинений. Вообще не Excel-файлы имелись изначально в виду, а сохранённые в браузере html-файлы заездов; это потом уже куда-то завихрилась и улетела. ;) ))
Но я помню, что Вы занимаетесь не извлечением из html, а уже дальнейшей стадией!
Последний раз отредактировано 16 февраля 2014 в 16:34 пользователем AvtandiLine
AvtandiLine Сообщение #93 16 февраля 2014 в 18:00
Кибергонщик
61
Есть маленькая вспомогательная хотелка. В создаваемом приложении (на страницах соревнований или где более уместно) чтобы была ссылка на эту тему на форуме. :)
ТОМА-АТОМНАЯ Сообщение #94 16 февраля 2014 в 18:06
Супермен
100
может я чего не понимаю, я ничего не скачивала, но я вижу графики, да и результаты видны, какие и сколько участников.
nosferatum Сообщение #95 16 февраля 2014 в 18:42
Супермен
32
Есть маленькая вспомогательная хотелка. В создаваемом приложении (на страницах соревнований или где более уместно) чтобы была ссылка на эту тему на форуме. :)


Где именно? Можно и на каждой странице вставить каким-нибудь микроэлементом.
AvtandiLine Сообщение #96 16 февраля 2014 в 19:13
Кибергонщик
61
Мне кажется, что где угодно, лишь бы оно выглядело к месту и логично. Если в конце после всего, значит, в конце, или с привязкой к какой-то точке экрана, - тоже нормально, я не знаю... просто будет удобно сразу на форум перейти...
nosferatum Сообщение #97 16 февраля 2014 в 19:59
Супермен
32
Добавил страницу с просмотром информации о заезде, например
http://5.9.201.108:8080/kgparser-web-1.0/r...p;roundNumber=1

Попасть на страницу заезда можно из таблицы заездов на странице соревнования, щелкнув по ссылке на номере заезда в этой таблице.
ОрденСуперменов Сообщение #98 16 февраля 2014 в 20:14
Супермен
4
А сохранять заезды можно так как сохраняются или надо нумеровать (1,2,3) ?
nosferatum Сообщение #99 16 февраля 2014 в 20:16
Супермен
32
Можно так, как сохраняются скриптом, упорядочение идет по времени заезда.
Занесу в FAQ этот вопрос.
Последний раз отредактировано 16 февраля 2014 в 21:43 пользователем nosferatum
Переборыч Сообщение #100 17 февраля 2014 в 01:18
Клавомеханик
54
Прикольно: теперь БГ можно посмотреть за минусом одного худшего (по Ордену Суперменов). Некоторые хотели за минусом двух, но, думаю, в Ордене тоже было бы неплохо за минусом двух в Обычном. Тогда все этапы станут равнозначны: 1/5 заездов отбрасывается.
nosferatum Сообщение #101 17 февраля 2014 в 01:31
Супермен
32
Я думаю, что «исключить N худших по словарю M» — это все по сути одно преобразование, которое параметризуется наборами «код словаря — количество исключаемых заездов».

Впрочем, еще надо крепко подумать над общей формой. Но пока писал алгоритм для Ордена, виделось мне именно такое обобщение.
Последний раз отредактировано 17 февраля 2014 в 01:47 пользователем nosferatum

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

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

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