Ads displayed for guests and not donating members only. Get ad-free by donating. If you have already donated, please read here.
  • Battle Results to JSON Parser v0.9.1

    This is the new version of the WoT-BattleResult-To-JSON Script.

    What is this good for?
    It is able to read battle results and convert to JSON. For easier use I included also a batch to process all replays from the current directory.

    There is a README included in the ZIP, and if you have questions don't hesitate to contact me.
    I would be glad if you would credit me in your project. Also a donation is very welcome!

    GitHub Repo:
    https://github.com/Phalynx/WoT-Battle-Results-To-JSON

    See also the WoT Developer Wiki
    Comments 19 Comments
    1. Benache.eu's Avatar
      Benache.eu -
      hey

      I don't use python and frankly i would like not to have to learn it. Is there a way to get a compiled version of your script, like you did for WoT-Dossier-Cache-to-JSON ?

      Thanks very much for the good work
    1. Phalynx.eu's Avatar
      Phalynx.eu -
      Most current Version, additionally it contains a compiled exe:
      http://www.vbaddict.net/projects/WoT...-JSON_0810.zip
    1. Phalynx.eu's Avatar
      Phalynx.eu -
      Most current Version, additionally it contains a compiled exe:
      http://www.vbaddict.net/download/WoT...-JSON_0910.zip
    1. Demoxxxx.eu's Avatar
      Demoxxxx.eu -
      Does the wotbr2j.exe require python to be installed, and if so what python version?

      I get "ImportError: No module named bisect" when trying to run exe file.
    1. Phalynx.eu's Avatar
      Phalynx.eu -
      The exe has its own runtime version of python, e.g. python27.dll and the .pyd files.
    1. Demoxxxx.eu's Avatar
      Demoxxxx.eu -
      Thanks for quick response.
      So any idea why I get the "ImportError: No module named bisect"?

      (sorry im just noob at this)
    1. Phalynx.eu's Avatar
      Phalynx.eu -
      Did you extracted the complete archive and launched the exe?
    1. Demoxxxx.eu's Avatar
      Demoxxxx.eu -
      C:\USERS\myuser\DESKTOP\WOT-BATTLE-RESULTS-TO-JSON_0910
      └───win32exe
      (space)└───library
      (space)(space)├───distutils
      (space)(space)├───encodings
      (space)(space)├───json
      (space)(space)├───logging
      (space)(space)└───unittest

      Im pretty sure, even the library.zip I extracted.
    1. Demoxxxx.eu's Avatar
      Demoxxxx.eu -
      Do you want file name listed also?
    1. Demoxxxx.eu's Avatar
      Demoxxxx.eu -
      You get it anyway
      Code:
      │   license
      │   maps.json
      │   process_all_pyc.cmd
      │   Readme.md
      │   tanks.json
      │   wotbr2j.py
      │   wotbr2j.pyc
      │
      └───win32exe
          │   bz2.pyd
          │   library.zip
          │   maps.json
          │   python27.dll
          │   select.pyd
          │   tanks.json
          │   unicodedata.pyd
          │   w9xpopen.exe
          │   wotbr2j.exe
          │   _hashlib.pyd
          │
          └───library
              │   abc.pyc
              │   atexit.pyc
              │   base64.pyc
              │   bdb.pyc
              │   bz2.pyc
              │   calendar.pyc
              │   cmd.pyc
              │   codecs.pyc
              │   collections.pyc
              │   contextlib.pyc
              │   copy.pyc
              │   copy_reg.pyc
              │   difflib.pyc
              │   dis.pyc
              │   doctest.pyc
              │   dummy_thread.pyc
              │   fnmatch.pyc
              │   functools.pyc
              │   genericpath.pyc
              │   getopt.pyc
              │   gettext.pyc
              │   gzip.pyc
              │   hashlib.pyc
              │   heapq.pyc
              │   inspect.pyc
              │   io.pyc
              │   keyword.pyc
              │   linecache.pyc
              │   locale.pyc
              │   ntpath.pyc
              │   opcode.pyc
              │   optparse.pyc
              │   os.pyc
              │   os2emxpath.pyc
              │   pdb.pyc
              │   pickle.pyc
              │   posixpath.pyc
              │   pprint.pyc
              │   py_compile.pyc
              │   quopri.pyc
              │   random.pyc
              │   re.pyc
              │   repr.pyc
              │   SafeUnpickler.pyc
              │   select.pyc
              │   shlex.pyc
              │   shutil.pyc
              │   sre.pyc
              │   sre_compile.pyc
              │   sre_constants.pyc
              │   sre_parse.pyc
              │   stat.pyc
              │   string.pyc
              │   StringIO.pyc
              │   stringprep.pyc
              │   struct.pyc
              │   subprocess.pyc
              │   tarfile.pyc
              │   tempfile.pyc
              │   textwrap.pyc
              │   threading.pyc
              │   token.pyc
              │   tokenize.pyc
              │   traceback.pyc
              │   types.pyc
              │   unicodedata.pyc
              │   UserDict.pyc
              │   warnings.pyc
              │   weakref.pyc
              │   zipfile.pyc
              │   _abcoll.pyc
              │   _hashlib.pyc
              │   _osx_support.pyc
              │   _strptime.pyc
              │   _threading_local.pyc
              │   _weakrefset.pyc
              │   __future__.pyc
              │
              ├───distutils
              │       errors.pyc
              │       log.pyc
              │       spawn.pyc
              │       sysconfig.pyc
              │       text_file.pyc
              │       __init__.pyc
              │
              ├───encodings
              │       aliases.pyc
              │       ascii.pyc
              │       base64_codec.pyc
              │       big5.pyc
              │       big5hkscs.pyc
              │       bz2_codec.pyc
              │       charmap.pyc
              │       cp037.pyc
              │       cp1006.pyc
              │       cp1026.pyc
              │       cp1140.pyc
              │       cp1250.pyc
              │       cp1251.pyc
              │       cp1252.pyc
              │       cp1253.pyc
              │       cp1254.pyc
              │       cp1255.pyc
              │       cp1256.pyc
              │       cp1257.pyc
              │       cp1258.pyc
              │       cp424.pyc
              │       cp437.pyc
              │       cp500.pyc
              │       cp720.pyc
              │       cp737.pyc
              │       cp775.pyc
              │       cp850.pyc
              │       cp852.pyc
              │       cp855.pyc
              │       cp856.pyc
              │       cp857.pyc
              │       cp858.pyc
              │       cp860.pyc
              │       cp861.pyc
              │       cp862.pyc
              │       cp863.pyc
              │       cp864.pyc
              │       cp865.pyc
              │       cp866.pyc
              │       cp869.pyc
              │       cp874.pyc
              │       cp875.pyc
              │       cp932.pyc
              │       cp949.pyc
              │       cp950.pyc
              │       euc_jisx0213.pyc
              │       euc_jis_2004.pyc
              │       euc_jp.pyc
              │       euc_kr.pyc
              │       gb18030.pyc
              │       gb2312.pyc
              │       gbk.pyc
              │       hex_codec.pyc
              │       hp_roman8.pyc
              │       hz.pyc
              │       idna.pyc
              │       iso2022_jp.pyc
              │       iso2022_jp_1.pyc
              │       iso2022_jp_2.pyc
              │       iso2022_jp_2004.pyc
              │       iso2022_jp_3.pyc
              │       iso2022_jp_ext.pyc
              │       iso2022_kr.pyc
              │       iso8859_1.pyc
              │       iso8859_10.pyc
              │       iso8859_11.pyc
              │       iso8859_13.pyc
              │       iso8859_14.pyc
              │       iso8859_15.pyc
              │       iso8859_16.pyc
              │       iso8859_2.pyc
              │       iso8859_3.pyc
              │       iso8859_4.pyc
              │       iso8859_5.pyc
              │       iso8859_6.pyc
              │       iso8859_7.pyc
              │       iso8859_8.pyc
              │       iso8859_9.pyc
              │       johab.pyc
              │       koi8_r.pyc
              │       koi8_u.pyc
              │       latin_1.pyc
              │       mac_arabic.pyc
              │       mac_centeuro.pyc
              │       mac_croatian.pyc
              │       mac_cyrillic.pyc
              │       mac_farsi.pyc
              │       mac_greek.pyc
              │       mac_iceland.pyc
              │       mac_latin2.pyc
              │       mac_roman.pyc
              │       mac_romanian.pyc
              │       mac_turkish.pyc
              │       mbcs.pyc
              │       palmos.pyc
              │       ptcp154.pyc
              │       punycode.pyc
              │       quopri_codec.pyc
              │       raw_unicode_escape.pyc
              │       rot_13.pyc
              │       shift_jis.pyc
              │       shift_jisx0213.pyc
              │       shift_jis_2004.pyc
              │       string_escape.pyc
              │       tis_620.pyc
              │       undefined.pyc
              │       unicode_escape.pyc
              │       unicode_internal.pyc
              │       utf_16.pyc
              │       utf_16_be.pyc
              │       utf_16_le.pyc
              │       utf_32.pyc
              │       utf_32_be.pyc
              │       utf_32_le.pyc
              │       utf_7.pyc
              │       utf_8.pyc
              │       utf_8_sig.pyc
              │       uu_codec.pyc
              │       zlib_codec.pyc
              │       __init__.pyc
              │
              ├───json
              │       decoder.pyc
              │       encoder.pyc
              │       scanner.pyc
              │       __init__.pyc
              │
              ├───logging
              │       __init__.pyc
              │
              └───unittest
                      case.pyc
                      loader.pyc
                      main.pyc
                      result.pyc
                      runner.pyc
                      signals.pyc
                      suite.pyc
                      util.pyc
                      __init__.pyc
    1. Phalynx.eu's Avatar
      Phalynx.eu -
      Please keep the file library.zip packed as it is. By unpacking library.zip and deleting the file I get also import errors. Just extract the content of the downloaded ZIP.

      Which OS do you have?
    1. Demoxxxx.eu's Avatar
      Demoxxxx.eu -
      The zip is still there. I tried first without unzip library.zip.

      /edit
      But as you can see, there is no bisect in library.
    1. Demoxxxx.eu's Avatar
      Demoxxxx.eu -
      Take from Some site:
      "Explicitly include the bisect module in binary builds.
      It was implicitly included with Python 2.7.3, but isn't with 2.7.5" Dont know if that also goes for this.
    1. Demoxxxx.eu's Avatar
      Demoxxxx.eu -
      Good morning.
    1. Phalynx.eu's Avatar
      Phalynx.eu -
      Good morning. Compilation was done with Python 2.7.2
      I'm out of ideas and would suggest you to compile it for yourself. Download Python and Py2Exe (http://www.py2exe.org/) and compile it.
    1. Demoxxxx.eu's Avatar
      Demoxxxx.eu -
      I give up, thanks for trying though.
      -I uninstalled the python 3.2.2 I had.
      -I donwloaded and installed: python-2.7.8.msi
      -I added c:\python27 to path
      Code:
      C:\Users\myuser\Desktop\WoT-Battle-Results-To-JSON_0910>wotbr2j.pyc "C:\Users\myuser\AppData\Roaming\Wargaming.net\WorldOfTanks\battle_results\IRSW233YPB4HQOZRGYZTGMQ=\65149466970950652.dat"
      ###### WoTBR2J 0.9.1.0
      Processing C:\Users\myuser\AppData\Roaming\Wargaming.net\WorldOfTanks\battle_results\IRSW233YPB4HQOZRGYZTGMQ=\65149466970950652.dat
      Battle Result cannot be read (pickle could not be read) No module named SafeUnpickler
      WOTBR2J: Battle Result cannot be read (pickle could not be read) No module named SafeUnpickler
    1. Phalynx.eu's Avatar
      Phalynx.eu -
      Download and try out the new version compatible with 0.9.3:
      http://www.vbaddict.net/download/WoT...-JSON_0930.zip
    1. Demoxxxx.eu's Avatar
      Demoxxxx.eu -
      Tadaaaa.
      That did it. Thanks alot.
      Code:
      C:\Users\myuser\Desktop\WoT-Battle-Results-To-JSON_0930>python wotbr2j.pyc "C:\Users\myuser\AppData\Roaming\Wargaming.net\WorldOfTanks\battle_results\IRSW233YPB4HQOZRGYZTGMQ=\65149466970950652.dat"
      ###### WoTBR2J 0.9.3.0
      Processing C:\Users\myuser\AppData\Roaming\Wargaming.net\WorldOfTanks\battle_results\IRSW233YPB4HQOZRGYZTGMQ=\65149466970950652.dat
      Processing Version: 8
      ###### Done!
    1. Phalynx.eu's Avatar
      Phalynx.eu -
      Glad to see it works.