Skip to content

Instantly share code, notes, and snippets.

@zoidyzoidzoid
Created October 5, 2018 08:40
Show Gist options
  • Save zoidyzoidzoid/88eb7749097806236327a7b9f09f47b9 to your computer and use it in GitHub Desktop.
Save zoidyzoidzoid/88eb7749097806236327a7b9f09f47b9 to your computer and use it in GitHub Desktop.
#!/usr/bin/env python
import sys
from collections import Counter
from fnmatch import fnmatch
from ijson import parse
def main():
prefixes = Counter()
pattern = raw_input('Pattern to find matching keys for: ')
with open(sys.argv[1]) as f:
parser = parse(f)
for prefix, event, value in parser:
if event != 'map_key':
continue
key = '{}.{}'.format(prefix, value)
if fnmatch(key, pattern):
prefixes[key] += 1
for key, value in prefixes.most_common(50):
print('{}: {}'.format(key, value))
if __name__ == '__main__':
main()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment