WotStatGrabber is a small Python program I've started working on to retrieve player stats from the official API and output them as a CSV file that can be easily opened and worked with in Excel and other programs. I got the idea from Praetor77 mentioning something like this would be useful in the WN8 thread and the current focus is making it useful to assist with WN development (and/or other statistical methods).
Right now it's in alpha, it can be run from the command line only and only has basic functionality. Currently you provide it with an input file that contains the names of users you want statistics for, the name of the output file, and optionally the number of top played low tier tanks to use for the low tier battles calculation. At this time only overall stats are supported, 1/30/60 day stats are planned for the future.
For anyone interested in the source here is the GitHub repository: https://github.com/AltairDusk/WoTStatGrabber/tree/develop
I'm also offering it compiled to an exe for Windows which doesn't require Python to be installed or any knowledge of Python. You just have to unzip the folder somewhere then call WotStatGrabber.exe from the command line.
WotStatGrabber.exe inputFile outputFile --wn --top_lt1 # --top_lt2 # --server S --tank_list
inputFile is the full path to a file containing 1 player name on each line for the players you want to look up
outputFile is the full path to the output file which will be created with the retrieved statistics
--wn is optional and used to specify WNx development mode. This will output additional stats that are of interest for development of the WNx statistic (currently the top low tier information).
--top_lt1 is optional and can be used to override the number of most played low tier tanks included in the first set of low tier battles calculations. If not provided the 3 most played low tier tanks (tiers 1-3) will be used. This flag has no effect if --wn is not provided.
--top_lt2 is optional and can be used to override the number of most played low tier tanks included in the second set of low tier battles calculations. If not provided the 5 most played low tier tanks (tiers 1-5) will be used. This flag has no effect if --wn is not provided.
--server is optional and can be used to specify what server you wish to retrieve user statistics from. If not provided the NA server will be used. You can specify NA, RU, EU, ASIA, or KR (note: KR is untested but available in the API). All of the names in inputFile will be requested against that server. It is not currently possible to get statistics for players across multiple servers in one request.
--tank_list overrides any other flags and will create a csv file where the headers (1st row) are the tank_id and the values (2nd row) are the tank name as reported by the API. From left to right they are sorted by tank_id (the same order tank battles will appear in a normal stats request with the --wn flag enabled). inputFile is not used with this flag but something must be supplied (can't be left blank) or the program will error out (not ideal I know, I'll fix that when I get around to restructuring the code). The --server flag can optionally be specified with --tank_list and the list of tanks will be requested from the API for the appropriate server. I do not believe the tank ids change from server to server but I suspect the localized names will.
Basic call (will not output low tier tank information):
WotStatGrabber.exe c:\temp\names.txt c:\temp\stats.csv
WNx development mode (will output additional information of interest for WNx):
WotStatGrabber.exe c:\temp\names.txt c:\temp\stats.txt --wn
WNx development mode with statistics for top 2 and top 8 most played low tiers:
WotStatGrabber.exe c:\temp\names.txt c:\temp\stats.txt --wn --top_lt1 2 --top_lt2 8
Retrieving the list of tank names from the NA API:
WotStatGrabber.exe c:\temp\names.txt --tank_list --server NA