Dec. 14, 2012

Python API and JSON

What is an API?

An application programming interface (API) is a protocol intended to be used as
an interface by software components to communicate with each other.

It's basically a set of programming instructions and standards for accessing
a Web-based software application or Web tool. 

A software company (like Amazon, Google etc) releases its API to the public so
that other software developers can design products that are powered by its service. 

For a more extended explanation on API, read this excellent article

Interact with an API using JSON

It is important to know that an API is a software-to-software interface, 
not a user interface. 

With APIs, applications talk to each other without any user knowledge or 

When we want to interact with an API in Python (like accessing web services), 
we get the responses in a form called JSON.  

To interact with JSON, we can use the json and simplejson modules. 

JSON (JavaScript Object Notation) is a compact, text based format for computers
to exchange data and is once loaded into Python just like a dictionary. 

JSON data structures map directly to Python data types, which makes this a 
powerful tool for directly accessing data without having to write any XML 
parsing code. 

How do I do this?

Let's show how we can do this by using Twittes API.

The first thing you have to do, is to find an URL to call the API.

The next step is to import the modules that we need.
import json
import urllib2

# open the url and the screen name 
# (The screen name is the screen name of the user for whom to return results for)
url = ""

# this takes a python object and dumps it to a string which is a JSON
# representation of that object
data = json.load(urllib2.urlopen(url))

# print the result
print data

More Examples

Using the Youtube API
Using the Vimeo API
Using the Twitter API
Using the Delicious API
Amazon API
Google API

Share this article

Recommended Python Training – DataCamp

For Python training, our top recommendation is DataCamp.

Datacamp provides online interactive courses that combine interactive coding challenges with videos from top instructors in the field.

Datacamp has beginner to advanced Python training that programmers of all levels benefit from.


Download Our Free Guide To Learning Python

* indicates required

Read more about:
Disclosure of Material Connection: Some of the links in the post above are “affiliate links.” This means if you click on the link and purchase the item, I will receive an affiliate commission. Regardless, only recommend products or services that we try personally and believe will add value to our readers.