Community Data Science Workshops (Sprint 2015)/Day 2 lection: Difference between revisions

From CommunityData
(fixed to use bears)
 
(One intermediate revision by one other user not shown)
Line 1: Line 1:
== Lecture Outline ==
#redirect [[Community Data Science Workshops (Spring 2015)/Day 2 Lecture]]
 
# Introduction to APIs
#* definition of API: just an interface for programs
#* definition of web API
#** way to ask for data (almost always a URL)
#** way to get data back (almost always in a format called JSON)
#** every API is different, and documented
#* to use APIs to build a dataset we will need:
#** all our tools from last session: variables, etc
#** the ability to open urls on the web
#** the ability to create custom URLS
#** the ability to save to files
#** the ability to understand (i.e., parse) JSON data that APIs usually give us
# Review material from last session
#* variables
#* lists
#* dictionaries
#* if statements
#* for loops
#* printing
#* modules
# New programming concepts:
#* Using [http://docs.python-requests.org/en/latest/ requests] to access files on the internet
#* interpolate variables into a string using % and %()s
#* open files and write to them
# [http://placebear.com/ placebear.com]
#* API that takes specially crafted URLs and gives appropriately sized picture of bears
#* example of placebear in browser
#** visit the API documentation
#** bears of different sizes
#** bears in greyscale or color
#** bears not your thing? Try [http://placekitten.com/ placekitten] instead!
#* show how to use place
#* write a small program to grab arbitrary square from placekitten by asking for the size on standard in
# JSON file (JavaScript Object Notation)
#* what is json: useful for more structure data
#* import json; json.loads()
#* like Python (except no single quotes)
#* simple lists, dictionaries
#* can reflect more complicated data structures
#* Example file at http://mako.cc/cdsw.json
#* download it and parse it
# Other APIs
#* every API is different, so read the documentation!
#* for popular APIs, there are python modules that help you make requests and parse json!
#* rate limiting
#* authenticaiton
#* text encoding issues

Latest revision as of 18:49, 25 April 2015