Roblox lookup toolkit: users, groups, games, and assets, with a file-backed cache and a batch mode for looking up many things at once.
Deliberately thinner than rbx-user on the user side (no friend/follower graph) -- this tool's job is breadth across entity types plus caching and batch lookups, not depth on any one of them. If you only need a user profile, use rbx-user; if you're pulling a mix of users, groups, games, and assets, or the same set repeatedly, this is the one that avoids re-hitting the API for data you already have.
Zero third-party dependencies, standard library only.
python3 -m rbx_inspect user <username-or-id>
python3 -m rbx_inspect group <group-id>
python3 -m rbx_inspect game <universe-id>
python3 -m rbx_inspect game <place-id> --from-place
python3 -m rbx_inspect asset <asset-id>
python3 -m rbx_inspect batch lookups.txt
python3 -m rbx_inspect user 1 --json
# lines starting with # are ignored
user:1
group:1
asset:1818
GET lookups are cached to ~/.cache/rbx-inspect/cache.json (override with
--cache-file) for one hour by default (--cache-ttl SECONDS), or disable
entirely with --no-cache. Username-to-ID resolution is never cached --
it's a POST that takes a batch of names, not a stable per-URL GET, so
caching it by URL would be wrong.
$ python3 -m rbx_inspect group 1
[group] RobloHunks
id: 1
memberCount: 299884
owner: RobloTim
description:
gameaccepts a universe ID by default; pass--from-placeif you have a place ID instead (the common case when you only have a game's URL).- Batch mode continues past a failed lookup and reports a non-zero exit code at the end rather than aborting the whole batch on the first miss.
MIT, see LICENSE.