Skip to content

Instantly share code, notes, and snippets.

@jrha
Last active December 20, 2015 18:08
Show Gist options
  • Save jrha/6173170 to your computer and use it in GitHub Desktop.
Save jrha/6173170 to your computer and use it in GitHub Desktop.
Example of using Gateway To Research JSON API
import json
import urllib2
# Get org data = http://gtr.rcuk.ac.uk/organisation/2512EF1C-401B-4222-9869-A770D4C5FAC7.json
# Get project data = http://gtr.rcuk.ac.uk/search/project.json?term=mouse
f = urllib2.urlopen('http://gtr.rcuk.ac.uk/search/project.json?term=mouse')
data = json.load(f)
f.close()
organisations = dict()
# Loop over projects
for project in data['results']:
project = project['projectComposition']
funder = project['project']['fund']['funder']['id']
pounds = project['project']['fund']['valuePounds']
fundee = project['leadResearchOrganisation']['id']
title = project['project']['title']
# Collect organisations
organisations[funder] = ''
organisations[fundee] = ''
print "%s gave %d pounds to %s for '%s'\n" % (funder, pounds, fundee, title)
for organisation in organisations.keys():
f = urllib2.urlopen('http://gtr.rcuk.ac.uk/organisation/%s.json' % organisation)
data = json.load(f)
f.close()
data = data['organisationOverview']['organisation']
try:
print "%s is %s at %s" % (organisation, data['name'], data['address']['postCode'])
except KeyError:
print "%s has something missing, maybe address?" % (organisation)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment