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

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

nosferatum Сообщение #41 4 февраля 2014 в 23:19
Супермен
34
Все же для формирования результатов соревнований нужно больше данных об игроках, помимо непосредственно результатов заездов. К тому же данные нужны именно на момент заезда, а не так, чтобы парсить DOM профиля пользователя уже во время обработки результатов.

К примеру:
"num_races": 171,
"avg_speed": 290.2059021,
"best_speed": 346,
"avg_error": 2.58923768997,
"qual": 0,

Также, совсем не рассматривается вариант того, что соревнования могут проводиться вне клубов? Имхо, по крайней мере до набора механизмом клубов полноценного и стабильного функционала такие соревнования в любом случае будут проводиться.
Последний раз отредактировано 4 февраля 2014 в 23:23 пользователем nosferatum
Fenex Сообщение #42 4 февраля 2014 в 23:27
Клавомеханик
49
Также, совсем не рассматривается вариант того, что соревнования могут проводиться вне клубов?
nosferatum писал(а):
Также, совсем не рассматривается вариант того, что соревнования могут проводиться вне клубов?

Естественно, те, кто хотят проводить соревнования в том виде, в котором они проводятся сейчас, смогут и в дальнейшем делать всё то же самое. Никто никого тащить не будет. Но и плюшек тоже никто не даст :)
Артём писал про это уже неоднакратно и подробно, не вижу смысла повторяться.

nosferatum писал(а):
К тому же данные нужны именно на момент заезда, а не так, чтобы парсить DOM профиля пользователя уже во время обработки результатов.

Можно подумать, эти результаты во время 15 заездов упадут на значимое количество.

И сейчас есть функции для забора данных в удобных форматах:
http://klavogonki.ru/ajax/profile-popup?us...gametype=normal
http://klavogonki.ru/api/profile/get-stats...gametype=normal
Последний раз отредактировано 4 февраля 2014 в 23:30 модератором Fenex
Переборыч Сообщение #43 4 февраля 2014 в 23:29
Клавомеханик-Организатор событий
55
Fenex писал(а):
Можно подумать, эти результаты во время 15 заездов упадут на значимое количество.

Результаты могут быть накручены после соревнования. Например, не хватило пары заездов до призового круглого пробега.
nosferatum Сообщение #44 4 февраля 2014 в 23:31
Супермен
34
Нескромный вопрос: а сервер сайд в духе:
http://klavogonki.ru/ajax/...
http://klavogonki.ru/api/...

является открытым, и им можно свободно пользоваться?

скрытый текст…

Fenex Сообщение #45 4 февраля 2014 в 23:33
Клавомеханик
49
Документации нет. Всё, что нароете - всё ваше.
voidmain Сообщение #46 4 февраля 2014 в 23:35
Маньяк
29
Обновил скрипт. Теперь и банановый в Firefox-е :)
Artch Сообщение #47 5 февраля 2014 в 01:25
Клавомеханик
15
является открытым, и им можно свободно пользоваться?

Только следует помнить, что при злоупотреблении ресурсами (например, выполнение запросов со слишком высокой частотой) могут быть применены санкции на IP-адрес.
voidmain Сообщение #48 5 февраля 2014 в 01:42
Маньяк
29
И еще раз обновил скрипт. Немного изменил формат + описал его. Подробности тут.
AvtandiLine Сообщение #49 5 февраля 2014 в 03:22
Кибергонщик
61
Вы тут замечательное дело затеяли. Просто превосходное с точки зрения юзерской и ведущего. А похоже, Создатель смотрит с другой точки зрения. :(
Поэтому хорошо бы подстраховаться каким-то "запасным" минимальным вариантом, который никого не_перенапряжёт. :( Именно "запасным", дополнительным, что ли, но создавать его наряду с полноценным.

А именно. Ориентироваться (в этом запасном минимальном) на ручное сохранение заездов. Автоматизация обработки сохранённых результатов, имхо, всё же важнее, поэтому сосредоточиться на ней. Три вида работ, которые бы выполнял этот минимально необходимый парсер. 1) "Вытаскивание" уже сохранённых результатов в сыром виде в таблицу Excel или что там есть совместимое. 2) Несколько типовых шаблонов для обсчёта всех уже устоявшихся соревнований с общеизвестными правилами, начиная с БГ и далее. 3) Возможность задавать правила обработки сырых результатов "произвольно", под конкретные пожелания ведущего или, в широком смысле, любого пользователя парсера, и соответственно сразу автоматически обрабатывать сохранённые заезды. Т.е. интерактивный такой режим. Посохранял какие-то заезды, обработал их так, обработал этак, сопоставил, что получилось... Поможет не_только в обсчёте уже проведённых, а и в создании новых соревнований.

DIgorevich два года назад сделал по моей просьбе прекрасную вещь, которую назвал, ради корректности, "Интерстено-парсером", а суть вернее выражается в шутливом названии "Идеально тупой парсер". :) Это по части 1) вытаскивание результатов в электронную таблицу и самая первичная обработка, улучшающая восприятие сырых результатов (сортировка, раскрашивание). Использовала этот парсер и для обсчётов конкурса, и потом просто для себя по следам некоторых других мероприятий.
http://klavogonki.ru/forum/general/1054/
Может, этот предыдущий опыт чем-то полезен. (Только с учётом, что в моих тогдашних пожеланиях были и недостаточно продуманные, из-за маленького опыта ведения событий).
Последний раз отредактировано 5 февраля 2014 в 03:36 пользователем AvtandiLine
MMMAAANNN Сообщение #50 5 февраля 2014 в 03:55
Супермен
36
А ведь наверняка существуют какие-то решения для автоматического преобразования полученного при помощи скрипта voidmain массива данных в формате json в формат Excel или в .csv, правда? Я вот такое нашел: http://jsfiddle.net/hybrid13i/JXrwM/

Может его можно было бы сразу отдавать в Excel-совместимом формате?
voidmain Сообщение #51 5 февраля 2014 в 08:33
Маньяк
29
MMMAAANNN, а зачем нам Excel? :)

Хотя если очень хочется, могу и в csv сохранять... Просто JSON "ближе к телу", так скажем :)
Последний раз отредактировано 5 февраля 2014 в 08:34 пользователем voidmain
nosferatum Сообщение #52 5 февраля 2014 в 11:22
Супермен
34
MMMAAANNN , преобразовать между JSON и Excel — не проблема.
Но с точки зрения хранения именно данных JSON удобней.

Преобразование в Excel ближе, скорее, к формату выходных данных, как мне кажется.
Последний раз отредактировано 5 февраля 2014 в 11:22 пользователем nosferatum
nosferatum Сообщение #54 5 февраля 2014 в 11:54
Супермен
34
Только следует помнить, что при злоупотреблении ресурсами (например, выполнение запросов со слишком высокой частотой) могут быть применены санкции на IP-адрес


Артем, тогда подскажите, пожалуйста, как одним запросом получить статистические данные (по режиму: рекорд, средняя скорость, средний процент по ошибок и т. д.) сразу по списку пользователей?
voidmain Сообщение #55 5 февраля 2014 в 11:59
Маньяк
29
nosferatum писал(а):
Артем, тогда подскажите, пожалуйста, как одним запросом получить статистические данные (по режиму: рекорд, средняя скорость, средний процент по ошибок и т. д.) сразу по списку пользователей?

Предположу, что никак. А зачем тебе это нужно?
nosferatum Сообщение #56 5 февраля 2014 в 12:14
Супермен
34
Эти данные нужны для подсчета результатов.

Если запускать кучу отдельных запросов (на каждого пользователя отдельно) чревато баном айпишника, то нужен способ получать данные "пачкой" по многим пользователям сразу.
DIgorevich Сообщение #57 5 февраля 2014 в 12:51
Новичок
62
nosferatum, вряд ли чревато баном. Мой парсер в данный момент и использует запросы а-ля http://klavogonki.ru/ajax/profile-popup/?u...ametype=noerror и ничего. Даже, когда были смертельные гонки - проходило и никого не банило.
Lakira Сообщение #58 5 февраля 2014 в 16:07
Супермен
56
DIgorevich писал(а):
Даже, когда были смертельные гонки - проходило и никого не банило.
Вроде бы в Смертельных гонках только парсер БГ использовали, а там пробег вообще не сморит.
DIgorevich Сообщение #59 5 февраля 2014 в 16:40
Новичок
62
Ну не принципиально, можно взять заезд вечернего х5, где больше 100 человек (а такое редко в мероприятиях бывает) и прошерстить его через режим "Формула 2" с включенными настройками парсинга пробегов.
Lakira Сообщение #60 5 февраля 2014 в 17:01
Супермен
56
Обзорно, как подводится итог в парсерах, чтобы немного обобщить, что есть сейчас. Может поможет прикинуть, как всё это организовывать в универсальном парсере.

Критерии определения победителя для итоговой таблицы, использующиеся (использовавшиеся ранее) в соревнованиях, проводимых на КГ:

  • средняя скорость/точность/...
    по всем заездам
    по n заездам без учёта x худших
    по n заездам без учёта x худших для каждого из y режимов
    по n лучшим заездам
    по n лучшим заездам для каждого из y режимов
  • средняя скорость с компенсациями/"арксинусами" - то же, что в первом варианте, но с учётом:
    при x ошибках (% ошибок) прибавляется/вычитается некоторое число/процент скорости
    "арксинус от Переборыча" – например, в Кювете
  • биатлонная система
    x баллов за n место в заезде
    x баллов за n место в заезде, но если скорость меньше y – 0 баллов
  • сумма скоростей/ошибок
    во всех заездах
    максимальных каждого из n режимов
  • максимальная скорость по всем заездам
  • количество доездов
    за все соревнование
    подряд без вылета
  • (скорость заезда × время заезда × n заездов) ÷ сумма ошибок за n заездов.
  • рекорд в словаре/режиме

Дополнительно к вышеприведённому может для y заездов выбираться только лучший результат, а худший не участвовать в расчёте (например, из двух Безошибочных заездов берётся только лучший результат. Если доезд только один – берётся только он).

Для одной итоговой таблицы может использоваться как один критерий определения победителя, так и несколько.
В одном соревновании может быть как одна итоговая таблица, так и несколько.
taina077 Сообщение #61 6 февраля 2014 в 09:11
Маньяк
28
Переборыч писал(а):
Результаты могут быть накручены после соревнования. Например, не хватило пары заездов до призового круглого пробега.


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

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

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

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