Warm-Up Exercise
- Pair up and share your Personal Python Project idea
 
- What is the goal of your project - how will you know it has
succeeded?
 
- What parts of your project do you think will be the most difficult
to implement?
 
- Can you identify any skills you’ll need to learn to complete your
project?
 
- Is there any data you need to collect for your project?
 
Thanks
- To the host for the great venue!
 
- To our sponsors
 
Administrivia
- Fire escapes
 
- Toilets
 
- Cleaning up after ourselves
 
- Wi-Fi
 
Lunch Talk: Web APIs
- On the World Wide Web, there are:
- Applications used by humans (i.e. websites)
 
- Applications used by other software
- Application Programming Interfaces (APIs)
 
 
 
- Python can make requests to web APIs that:
- Get data (e.g. get news updates)
 
- Post data (e.g. publish a social media update)
 
 
Requests and Responses

- HTTP is the protocol for web
communication
 
- HTTPS is the Secure version of HTTP
 
HTTP Requests
- Every request has a method:
GET requests fetch data 
POST requests submit data 
  
- Every request is made to a Uniform Resource Locator
(URL):
 

HTTP Responses
- Responses for web pages return text, images, etc.
 
- Responses from APIs return data your code can use
- Typically formatted as JSON or
XML
 
 
- Every HTTP response also has a status code:
200 OK - The request succeeded 
404 Not Found - The path couldn’t be found 
400 Bad Request - Request parameters were invalid 
500 Internal Server Error - The server couldn’t respond
properly 
  
 
Tips for working with web APIs
- An API should provide documentation of:
- Supported paths and methods for requests
 
- Supported parameters for each request
 
- The format of data in responses
 
 
- Meanings of methods and status codes are
conventions - not all APIs use them consistently
 
- Always check API terms & conditions
 
- Some APIs require you to sign up for an API key or
otherwise identify your account to make requests
 
- You can even use Python to make your own web API to service requests
from other applications!
 
 
Tutorial Objectives
- Retrieving data from a web API
 
Independent Work/Homework
- Exercise Notebook:
 
- Work through the final futurecoder.io section:
- Tic Tac Toe Project
 
 
- Work on your own Python project