स्ट्रक्चर्ड डेटा के साथ काम

Python में APIs परिचय

Chris Ramakers

Engineering manager

जटिल डेटा स्ट्रक्चर

Lyric API प्रतिक्रिया

HTTP 200 OK के साथ Lyric API प्रतिक्रिया. Headers: Content-Type: plain/text, Content-Language: en-US, Last-Modified: Wed, 21 Oct 2023. Body: AC/DC के "Problem Child" के बोल.

Album API प्रतिक्रिया

HTTP 200 OK के साथ Album API प्रतिक्रिया. Headers JSON कंटेंट दर्शाते हैं. Body में AC/DC के "Back in Black" एल्बम का विवरण और ट्रैक टाइटल्स हैं.

Python में APIs परिचय

जटिल डेटा स्ट्रक्चर: JSON

  • JSON
    • JavaScript Object Notation
    • व्यापक रूप से सपोर्टेड
    • इंसान-पढ़ने योग्य, मशीन-उपयोगी
  • Content-type, mime-type या media-type
  • अन्य फ़ॉर्मैट
    • XML
    • CSV
    • YAML

Album API प्रतिक्रिया

HTTP 200 OK के साथ Album API प्रतिक्रिया. Headers JSON कंटेंट दर्शाते हैं. Body में AC/DC के "Back in Black" एल्बम का विवरण और ट्रैक टाइटल्स हैं.

Python में APIs परिचय

Python से JSON और वापस

  Python से JSON-फॉर्मैटेड टेक्स्ट को encode/decode करने का दृश्य. JSON में AC/DC के "Back in Black" एल्बम का विवरण है.

import json
album =  {'id': 42, 'title':"Back in Black"}
string = json.dumps(album) # Encodes a python object to a JSON string
album = json.loads(string) # Decodes a JSON string to a Python object
Python में APIs परिचय

JSON डेटा रिक्वेस्ट करना

# हेडर के बिना GET रिक्वेस्ट
response = requests.get('http://api.music-catalog.com/lyrics')
print(response.text)
N' I never miss Cause I'm a problem child - AC/DC, Problem Child
# accept हेडर के साथ GET रिक्वेस्ट
response = requests.get('http://api.music-catalog.com/lyrics', headers={'accept': 'application/json'})

# JSON टेक्स्ट प्रिंट करें
print(response.text)

# Python ऑब्जेक्ट में डिकोड करें data = response.json() print(data['artist'])
{'artist': 'AC/DC', 'lyric': "N' I never miss Cause I'm a problem child", 'track': 'Problem Child'}

AC/DC
Python में APIs परिचय

JSON डेटा भेजना

import requests
playlist = {"name": "Road trip", "genre":"rock", "private":"true"}

# `json` आर्ग्युमेंट के जरिए playlist जोड़ें 
response = requests.post("http://api.music-catalog.com/playlists", json=playlist)
# रिक्वेस्ट ऑब्जेक्ट लें
request = response.request

# रिक्वेस्ट का content-type हेडर प्रिंट करें
print(request.headers['content-type'])
application/json
Python में APIs परिचय

अभ्यास करते हैं!

Python में APIs परिचय

Preparing Video For Download...