APIs का परिचय

pandas के साथ सरल Data Ingestion

Amany Mahfouz

Instructor

Application Programming Interfaces

  • बताता है कि एक एप्लिकेशन अन्य प्रोग्रामों से कैसे बात करता है
  • डेटाबेस विवरण जाने बिना एप्लिकेशन से डेटा पाने का तरीका

कुछ प्रविष्टियाँ भरी हुई और कुछ खाली वाला फॉर्म

pandas के साथ सरल Data Ingestion

Application Programming Interfaces

  • बताता है कि एक एप्लिकेशन अन्य प्रोग्रामों से कैसे बात करता है
  • डेटाबेस विवरण जाने बिना एप्लिकेशन से डेटा पाने का तरीका

एक फॉर्म और एक स्टोरफ़्रंट। एक तीर दिखाता है कि फॉर्म स्टोर को भेजा जा रहा है.

pandas के साथ सरल Data Ingestion

Application Programming Interfaces

  • बताता है कि एक एप्लिकेशन अन्य प्रोग्रामों से कैसे बात करता है
  • डेटाबेस विवरण जाने बिना एप्लिकेशन से डेटा पाने का तरीका

एक खुला पैकेज और एक स्टोरफ़्रंट। पैकेज वहीं है जहाँ पहले ऑर्डर फॉर्म था। एक तीर दिखाता है कि स्टोर ने पैकेज भेजा है.

pandas के साथ सरल Data Ingestion

Requests

  • वेबसाइटों से डेटा भेजें और पाएँ
  • किसी एक API से बँधा नहीं
  • URL से डेटा पाने के लिए requests.get()

requests लोगो

pandas के साथ सरल Data Ingestion

requests.get()

  • URL से डेटा पाने के लिए requests.get(url_string)
  • कीवर्ड आर्ग्युमेंट्स
    • params कीवर्ड: पैरामीटर और मानों की dictionary लेता है, API रिक्वेस्ट को कस्टमाइज़ करता है
    • headers कीवर्ड: dictionary लेता है, API को user authentication देने में काम आता है
  • परिणाम: response ऑब्जेक्ट, जिसमें डेटा और मेटाडेटा होता है
    • केवल JSON डेटा के लिए response.json()
pandas के साथ सरल Data Ingestion

response.json() और pandas

  • response.json() एक dictionary लौटाता है
  • read_json() को strings चाहिए, dictionaries नहीं
  • pd.DataFrame() से response JSON को dataframe में लोड करें
    • read_json() त्रुटि देगा!
pandas के साथ सरल Data Ingestion

Yelp Business Search API

Yelp लोगो

pandas के साथ सरल Data Ingestion

Yelp Business Search API

Yelp Business Search API दस्तावेज़। रिक्वेस्ट endpoint और कुछ पैरामीटर दिखाए गए हैं.

pandas के साथ सरल Data Ingestion

Yelp Business Search API

Yelp Business Search API दस्तावेज़। API endpoint URL हाइलाइटेड है.

pandas के साथ सरल Data Ingestion

Yelp Business Search API

Yelp Business Search API दस्तावेज़। एक वैकल्पिक term पैरामीटर हाइलाइटेड है.

pandas के साथ सरल Data Ingestion

Yelp Business Search API

Yelp Business Search API दस्तावेज़। आवश्यक location पैरामीटर हाइलाइटेड हैं.

pandas के साथ सरल Data Ingestion

Yelp Business Search API

Yelp Business Search API दस्तावेज़, एक उदाहरण response JSON दिखाया गया है

pandas के साथ सरल Data Ingestion

रिक्वेस्ट बनाना

import requests
import pandas as pd

api_url = "https://api.yelp.com/v3/businesses/search"
# दस्तावेज़ के अनुसार पैरामीटर dictionary सेट करें params = {"term": "bookstore", "location": "San Francisco"}
# दस्तावेज़ के अनुसार API key के साथ header dictionary सेट करें headers = {"Authorization": "Bearer {}".format(api_key)}
# API कॉल करें response = requests.get(api_url, params=params, headers=headers)
pandas के साथ सरल Data Ingestion

Responses पार्स करना

# response ऑब्जेक्ट से JSON डेटा अलग करें
data = response.json()
print(data)
{'businesses': [{'id': '_rbF2ooLcMRA7Kh8neIr4g', 'alias': 'city-lights-bookstore-san-francisco', 'name': 'City Lights Bookstore', 'image_url': 'https://s3-media1.fl.yelpcdn.com/bphoto/VRydkkpVbA3CeVLBKzs2Vw/o.jpg', 'is_closed': False,
# businesses डेटा को dataframe में लोड करें
bookstores = pd.DataFrame(data["businesses"])
print(bookstores.head(2))
                                  alias        ...                                                    url
0   city-lights-bookstore-san-francisco        ...      https://www.yelp.com/biz/city-lights-bookstore...
1  alexander-book-company-san-francisco        ...      https://www.yelp.com/biz/alexander-book-compan...

[2 rows x 16 columns]
pandas के साथ सरल Data Ingestion

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

pandas के साथ सरल Data Ingestion

Preparing Video For Download...