Ссылка на лог игры имеет вид:
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
Все тоже самое что и выше только путь вида:
/data/data/com.android.chrome/app_chrome/Default/Local Storage/http_tenhou_net_0.localstorage
%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 с возможностью привязки показанных логов