Clone
6
Как получить ссылку на лог игры
WarL0ck edited this page 2018-06-07 11:44:35 +07:00

Ссылка на лог игры имеет вид: http://tenhou.net/0/?log=2017012116gm-0001-0000-05a1bd94&tw=3 для нас важно узнать часть в параметре log - уникальный код лога. В зависимости от игрового клиента код можно получить по-разному.

Android-клиент

Этот клиент представляет собой обычный браузер. Последние 40 ссылок хранятся в хранилище этого браузера. Взять хранилище можно только при наличии root-доступа. Любым файловым менеджером копируем его на sdcard из внутренней памяти по пути:

/data/data/net.tenhou.WebBrowserYYYYMMDD/appwebview/Local Storage/file0.localstorage

Какие-то числа в пути могут быть другие но ничего страшного. Файл представляет собой sqlite3 базу данных, из которой можно взять что нам нужно. Пример для windows:

  • Скачиваем консольный клиент
  • Выгружаем инфу командой:

sqlite3 %1 -noheader -list "select * from ItemTable where key like 'log%%'" > %1.txt

  • Нужные нам коды в строках вида:

log33|{"type":137,"lobby":0,"log":"2017022402gm-0089-0000-51d23e14","oya":3, ...

где в кавычках после "log" - код лога

Chrome

Все тоже самое что и выше только путь вида:

  • Мобильный Chrome

/data/data/com.android.chrome/app_chrome/Default/Local Storage/http_tenhou_net_0.localstorage

  • Chrome под Windows

%User%/AppData/Local/Google/Chrome/User Data/Default/Local Storage/http_tenhou_net_0.localstorage

Остальное

Все перечислять проблематично - есть куча браузеров, клиентов. В помощь можно посоветовать ресурс на GitHub, где можно найти скрипт для выгрузки базы ссылок логов (tenhou-download-game-xml.py). Так же там есть полная информация по формату лога.

Для разработчиков

У меня лог парсится и отдается шаблонизатору pug, который уже выводит как надо. Весь лог преобразуется в JSON-структуру, которую можно поглядеть есть добавить параметр json=1 к GET-запросу прямого линка пайфы. P.S. В парсере еще не сделаны все мои хотелки, работа продолжается. Как будет все готов по моему мнению опубликую на GitHub. Пока в планах есть несколько пунктов:

  • возможность формирования сразу в pdf (разбивка по страница, оглавление)
  • кнопки поделиться в соцсети???
  • возможно сбор статистики в tenhou (типа arcturus с возможностью привязки показанных логов