Einführung in APIs und JSON

Importing Data in Python (Fortgeschritten)

Hugo Bowne-Anderson

Data Scientist at DataCamp

APIs

  • Application Programming Interface (Anwendungsprogrammierschnittstelle)
  • Protokolle und Routinen
    • Softwareanwendungen erstellen und mit ihnen interagieren

ch_2_1.006.png

Importing Data in Python (Fortgeschritten)

APIs

  • Application Programming Interface (Anwendungsprogrammierschnittstelle)
  • Protokolle und Routinen
    • Softwareanwendungen erstellen und mit ihnen interagieren

ch_2_1.007.png

Importing Data in Python (Fortgeschritten)

JSONs

  • JavaScript-Objekt-Notation

  • Echtzeit-Kommunikation zwischen Server und Browser

  • Douglas Crockford

  • Für Menschen lesbar

ch_2_1.013.png

Importing Data in Python (Fortgeschritten)

JSONs

{'Actors': 'Samuel L. Jackson, Julianna Margulies, Nathan Phillips,
 Rachel Blanchard',
 'Awards': '3 wins & 7 nominations.',
 'Country': 'Germany, USA, Canada',
 'Director': 'David R. Ellis',
 'Genre': 'Action, Adventure, Crime',
 'Language': 'English',
 'Rated': 'R',
 'Released': '18 Aug 2006',
 'Runtime': '105 min',
 'Title': 'Snakes on a Plane',
 'Type': 'movie',
 'Writer': 'John Heffernan (screenplay), Sebastian Gutierrez (screenplay), 
 David Dalessandro (story), John Heffernan (story)',
 'Year': '2006',
 'imdbID': 'tt0417148',
 'imdbRating': '5.6',
 'imdbVotes': '114,668'}
Importing Data in Python (Fortgeschritten)

JSONs

{'Actors': 'Samuel L. Jackson, Julianna Margulies, Nathan Phillips,
 Rachel Blanchard',
 'Awards': '3 wins & 7 nominations.',
 'Country': 'Germany, USA, Canada',
 'Director': 'David R. Ellis',
 'Genre': 'Action, Adventure, Crime',
 'Language': 'English',
 'Rated': 'R',
 'Released': '18 Aug 2006',
 'Runtime': '105 min',
 'Title': 'Snakes on a Plane',    <--
 'Type': 'movie',
 'Writer': 'John Heffernan (screenplay), Sebastian Gutierrez (screenplay), 
 David Dalessandro (story), John Heffernan (story)',
 'Year': '2006',
 'imdbID': 'tt0417148',
 'imdbRating': '5.6',
 'imdbVotes': '114,668'}
Importing Data in Python (Fortgeschritten)

JSONs

{'Actors': 'Samuel L. Jackson, Julianna Margulies, Nathan Phillips,
 Rachel Blanchard',
 'Awards': '3 wins & 7 nominations.',
 'Country': 'Germany, USA, Canada',
 'Director': 'David R. Ellis',
 'Genre': 'Action, Adventure, Crime',
 'Language': 'English',
 'Rated': 'R',
 'Released': '18 Aug 2006',
 'Runtime': '105 min',
 'Title': 'Snakes on a Plane',    <--
 'Type': 'movie',
 'Writer': 'John Heffernan (screenplay), Sebastian Gutierrez (screenplay), 
 David Dalessandro (story), John Heffernan (story)',
 'Year': '2006',                  <--
 'imdbID': 'tt0417148',
 'imdbRating': '5.6',
 'imdbVotes': '114,668'}
Importing Data in Python (Fortgeschritten)

JSONs in Python laden

import json
with open('snakes.json', 'r') as json_file: 
       json_data = json.load(json_file)
type(json_data)
dict
Importing Data in Python (Fortgeschritten)

JSONs in Python erkunden

for key, value in json_data.items():
    print(key + ':', value)
Title: Snakes on a Plane
Country: Germany, USA, Canada
Response: True
Language: English
Awards: 3 wins & 7 nominations.
Year: 2006
Actors: Samuel L. Jackson, Julianna Margulies
Runtime: 105 min
Genre: Action, Adventure, Crime
imdbID: tt0417148
Director: David R. Ellis
imdbRating: 5.6
Rated: R
Released: 18 Aug 2006
Importing Data in Python (Fortgeschritten)

Lass uns üben!

Importing Data in Python (Fortgeschritten)

Preparing Video For Download...