Skip to content

Instantly share code, notes, and snippets.

@FranciscoGutierrez
Created November 13, 2017 13:59
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save FranciscoGutierrez/7c43d07ed11a6ca5bd47858cd8b9072c to your computer and use it in GitHub Desktop.
Save FranciscoGutierrez/7c43d07ed11a6ca5bd47858cd8b9072c to your computer and use it in GitHub Desktop.
A simple script to get some data from europeana.
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import json
import urllib2
f = open('europeana.csv','w')
# Insert key replacing the -> ######
response = json.load(urllib2.urlopen("http://www.europeana.eu/api/v2/search.json?start=1&rows=100&wskey=#######&query=(cyanotype+OR+cyanotypie+OR+cyanotypi)"))
# CSV header
f.write("country,title,year,label,language,provider,score,type,link,image,dataProvider")
f.write("\n")
# Loop
for item in response["items"]:
f.write(item["country"][0]+",")
###
if "title" in item:
f.write(item["title"][0].encode('utf-8').replace(",", "")+",")
else:
f.write("none,")
###
if "year" in item:
f.write(item["year"][0]+",")
else:
f.write("none,")
###
if "edmConceptPrefLabelLangAware" in item:
f.write(item["edmConceptPrefLabelLangAware"]["en"][0].replace(",", "") +",")
else:
f.write("none,")
###
if "language" in item:
f.write(item["language"][0]+",")
else:
f.write("none,")
###
if "provider" in item:
f.write(item["provider"][0]+",")
else:
f.write("none,")
###
if "score" in item:
f.write(str(item["score"])+",")
else:
f.write("none,")
###
if "type" in item:
f.write(item["type"] +",")
else:
f.write("none,")
###
if "link" in item:
f.write(item["link"] +",")
else:
f.write("none,")
###
if "edmPreview" in item:
f.write(item["edmPreview"][0] +",")
else:
f.write("none,")
###
if "dataProvider" in item:
f.write(item["dataProvider"][0].encode('utf-8'))
else:
f.write("none")
f.write("\n")
f.close()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment