Skip to content

Instantly share code, notes, and snippets.

@emileaben
Last active December 21, 2016 12:37
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 emileaben/cfa43dd68193407911ef6f7daa866bc1 to your computer and use it in GitHub Desktop.
Save emileaben/cfa43dd68193407911ef6f7daa866bc1 to your computer and use it in GitHub Desktop.
#!/usr/bin/env python
import sys
import json
import urllib2
from collections import Counter
url = "https://atlas.ripe.net/api/v2/probes?page_size=500"
tc = Counter() # tag counter
tcu = Counter() # tag counter for probes that are up
try:
while url:
t = urllib2.urlopen( url )
j = json.load( t )
url = j['next']
if url:
print >>sys.stderr, "next url: %s" % ( url )
for pr in j['results']:
for tag in pr['tags']:
tc[ tag['slug'] ] += 1
if pr['status']['id'] == 1:
tcu[ tag['slug'] ] += 1
except:
print "something went wrong"
raise
print "#count\tup_count\ttag"
for tag,count in tc.most_common():
up_count = 0
if tag in tcu:
up_count = tcu[tag]
print "{}\t{}\t{}".format( count, up_count, tag )
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment