Skip to content

Instantly share code, notes, and snippets.

@chuckadams
Created April 25, 2016 18:25
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save chuckadams/90a675a7804c6f0d9ea8787797422d6d to your computer and use it in GitHub Desktop.
Save chuckadams/90a675a7804c6f0d9ea8787797422d6d to your computer and use it in GitHub Desktop.
Slurp npm registry into a plain text format
#!/usr/bin/env python
import sys
import urllib
import ijson
if len(sys.argv) < 2:
url = 'http://registry.npmjs.org/-/all'
else:
url = sys.argv[1]
input = urllib.urlopen(url)
parser = ijson.parse(input)
ignored_events = ['start_map', 'end_map', 'start_array', 'end_array',
'map_key']
for prefix, event, value in parser:
if event in ignored_events:
continue
if event == 'string':
value = value.encode('utf-8')
print "{} {}".format(prefix, value)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment