A simple way to get live Halo data straight from Halo Waypoint.
Note: This project is in a public alpha, and as such, many features are not complete.
HaloInfiniteGetter is in no way associated with, endorsed by, or otherwise affiliated with the Microsoft Corporation, Xbox Game Studios, or 343 Industries. Depending on how you use it, use of this app may or may not be considered abuse by the aforementioned parties.
HaloInfiniteGetter is a GUI application written using Qt for Python that allows you to easily view data hosted on HaloWaypoint API endpoints.
You can view both Image and Text output, with these results being cached in the user's .cache/hi_getter/cached_requests directory,
to eliminate unnecessary API calls.
pip install hi_getter
pip install git+https://github.com/Cubicpath/HaloInfiniteGetter.githi_getter
Create Desktop Shortcut tool
under the Tools context menuAs this app is unofficial, you must use your own API key, which you can get by logging in to HaloWaypoint and either getting data from the authentication headers, or from the website's cookies.
Guide:
When you access a resource and are properly authenticated, it is cached to your
~/.cache/hi_getter/cached_requests directory.
By default, when you access an already-cached resource, HaloInfiniteGetter checks for a new
version of said resource on HaloWaypoint servers. The old version is stored in
~/.cache/hi_getter/old_files along with its version identifier.
An example resource (Progression/file/Calendars/Seasons/SeasonCalendar.json) is pre-filled out in the
path input section.
You may omit progression/file/ and images/file/ from searches, so long as the file extension of the resource
indicates data or media (ex: json defaults as progression/file/, png and jpg defaults as images/file/).
Gets the singular resource from the given path and outputs it.
Warning: This may display various flashing images in quick succession.
Recursively scan a given JSON resource for paths to more resources, ignoring already scanned resources. This results in caching ALL resources that are referenced by any other resource with some tie to the original resource path.
If you want to scan your own json file(s) for resource paths, you can use the Scan Files... tool in the
Tools context menu.
You can view all cached files using the Cache Explorer, which is on the left-hand side of the main window.
It has 1 setting:
Context Menu actions:
You can use the File context menu to easily import and export archive files containing cached requests.
Once imported, you can view the data in the Cache Explorer.
Supported archive types are:
*.7z)*.zip & *.piz)*.tar, *.tar.gz, *.tgz, *.tar.bz2, *.tbz2, *.tar.xz, *.txz)
gzip, bzip2, and xz are the supported compression algorithmsBoth the media and the text output can be detached and reattached from the main window. This allows greater flexibility, like viewing only the image in fullscreen.
The media output shows the currently loaded image to the user, scaled to fit the current window.
It has two settings:
The text output displays any text data loaded by the given path, or an error response from the server.
Path are automatically detected and hyperlinked for ease of use, which allows you to easily browse multiple paths in succession.
It has one setting:
Themes are a way to style already-existing elements (Think CSS). They are held in a directory with their resources and stylesheet in the same folder level.
../
│
├───[theme_id]/
│ ├─── [icon1_name].svg
│ ├─── [icon2_name].svg
│ ├─── [icon3_name].svg
│ └─── stylesheet.qss
│
The current builtin themes are:
Breeze DarkBreeze LightLegacy (Default Qt)While the current breeze themes are slightly modified versions, you can view the original themes at BreezeStyleSheets.