Path: blob/master/binder/populate_nobel_database.py
2488 views
import requests1from pymongo import MongoClient23# Client connects to "localhost" by default4client = MongoClient()5# Create local "nobel" database on the fly6db = client["nobel"]78# API documented at https://nobelprize.readme.io/docs/prize9for collection_name in ["prizes", "laureates"]:10singular = collection_name[:-1]11response = requests.get("http://api.nobelprize.org/v1/{}.json".format(singular))12documents = response.json()[collection_name]13# Access collections on the fly!14db[collection_name].drop() # Drop collection first if already exists15db[collection_name].insert_many(documents)1617# Check to make sure everything is correct18assert client.nobel == client["nobel"]19assert client.nobel.prizes == client["nobel"]["prizes"]20print(db.prizes.count_documents({}), "prize documents")21print(db.laureates.count_documents({}), "laureates documents")222324