Python क्विकस्टार्ट

क्विकस्टार्ट उस ऐप्लिकेशन को सेट अप करने और चलाने का तरीका बताता है जो Google Workspace API को कॉल करता है.

Google Workspace क्विकस्टार्ट, पुष्टि करने और अनुमति देने की प्रोसेस से जुड़ी कुछ जानकारी को मैनेज करने के लिए, एपीआई क्लाइंट लाइब्रेरी का इस्तेमाल करता है. हमारा सुझाव है कि आप अपने ऐप्लिकेशन के लिए, क्लाइंट लाइब्रेरी का इस्तेमाल करें. यह क्विकस्टार्ट, पुष्टि करने के आसान तरीके का इस्तेमाल करता है. यह टेस्ट एनवायरमेंट के लिए सही है. प्रोडक्शन एनवायरमेंट के लिए, हमारा सुझाव है कि अपने ऐप्लिकेशन के लिए सही ऐक्सेस क्रेडेंशियल चुनने से पहले, पुष्टि करने और अनुमति देने के बारे में जानें.

ऐसा Python कमांड-लाइन ऐप्लिकेशन बनाएं जो Google Forms API से अनुरोध करे.

मकसद

  • अपना एनवायरमेंट सेट अप करें.
  • क्लाइंट लाइब्रेरी इंस्टॉल करें.
  • सैंपल सेट अप करें.
  • सैंपल चलाएं.

ज़रूरी शर्तें

इस क्विकस्टार्ट को चलाने के लिए, आपको इन शर्तों का पालन करना होगा:

  • आपके पास एक Google खाता होना चाहिए.

अपना एनवायरमेंट सेट अप करें

इस क्विकस्टार्ट को पूरा करने के लिए, अपना एनवायरमेंट सेट अप करें.

एपीआई चालू करें

Google API का इस्तेमाल करने से पहले, आपको उन्हें Google Cloud प्रोजेक्ट में चालू करना होगा. किसी एक Google Cloud प्रोजेक्ट में, एक या उससे ज़्यादा एपीआई चालू किए जा सकते हैं.

अगर इस क्विकस्टार्ट को पूरा करने के लिए, किसी नए Google Cloud प्रोजेक्ट का इस्तेमाल किया जा रहा है, तो OAuth के लिए सहमति देने वाली स्क्रीन को कॉन्फ़िगर करें और खुद को टेस्ट उपयोगकर्ता के तौर पर जोड़ें. अगर आपने अपने Cloud प्रोजेक्ट के लिए यह चरण पहले ही पूरा कर लिया है, तो अगले सेक्शन पर जाएं.

  1. Google Cloud Console में, मेन्यू > एपीआई और सेवाएं > OAuth की सहमति वाली स्क्रीन पर जाएं.

    ऐसी स्क्रीन पर जाएं जहां OAuth के लिए सहमति दी जाती है

  2. अपने ऐप्लिकेशन के लिए, उपयोगकर्ता का टाइप चुनें. इसके बाद, बनाएं पर क्लिक करें.
  3. ऐप्लिकेशन रजिस्ट्रेशन फ़ॉर्म भरें. इसके बाद, सेव करें और जारी रखें पर क्लिक करें.
  4. फ़िलहाल, दायरों को छोड़कर आगे बढ़ा जा सकता है. साथ ही, सेव करें और जारी रखें पर क्लिक करें. आने वाले समय में, जब अपने Google Workspace संगठन से बाहर इस्तेमाल करने के लिए कोई ऐप्लिकेशन बनाया जाएगा, तो आपको अनुमति वाले उन दायरों को जोड़ना होगा और उनकी पुष्टि करनी होगी जो आपके ऐप्लिकेशन को ज़रूरी हैं.

  5. अगर आपने उपयोगकर्ता टाइप के लिए बाहरी उपयोगकर्ता को चुना है, तो टेस्ट उपयोगकर्ताओं को जोड़ें:
    1. टेस्ट उपयोगकर्ता में जाकर, उपयोगकर्ताओं को जोड़ें पर क्लिक करें.
    2. अपना ईमेल पता और टेस्ट के लिए अनुमति पा चुके किसी अन्य उपयोगकर्ता का ईमेल पता डालें. इसके बाद, सेव करें और जारी रखें पर क्लिक करें.
  6. अपने ऐप्लिकेशन रजिस्ट्रेशन की खास जानकारी देखें. बदलाव करने के लिए, बदलाव करें पर क्लिक करें. अगर ऐप्लिकेशन रजिस्ट्रेशन ठीक लग रहा है, तो डैशबोर्ड पर वापस जाएं पर क्लिक करें.

डेस्कटॉप ऐप्लिकेशन के लिए क्रेडेंशियल की पुष्टि करना

असली उपयोगकर्ताओं की पुष्टि करने और अपने ऐप्लिकेशन में उपयोगकर्ता का डेटा ऐक्सेस करने के लिए, आपको एक या उससे ज़्यादा OAuth 2.0 क्लाइंट आईडी बनाने होंगे. Client-ID का इस्तेमाल, Google के OAuth सर्वर पर किसी एक ऐप्लिकेशन की पहचान करने के लिए किया जाता है. अगर आपका ऐप्लिकेशन एक से ज़्यादा प्लैटफ़ॉर्म पर चलता है, तो आपको हर प्लैटफ़ॉर्म के लिए अलग-अलग क्लाइंट आईडी बनाना होगा.
  1. Google Cloud Console में, मेन्यू > एपीआई और सेवाएं > क्रेडेंशियल पर जाएं.

    क्रेडेंशियल पर जाएं

  2. क्रेडेंशियल बनाएं > OAuth क्लाइंट आईडी पर क्लिक करें.
  3. ऐप्लिकेशन प्रकार > डेस्कटॉप ऐप्लिकेशन पर क्लिक करें.
  4. नाम फ़ील्ड में, क्रेडेंशियल के लिए नाम लिखें. यह नाम सिर्फ़ Google Cloud Console में दिखता है.
  5. बनाएं पर क्लिक करें. अब OAuth क्लाइंट की स्क्रीन पर आपका नया क्लाइंट आईडी और क्लाइंट सीक्रेट दिखेगा.
  6. ठीक है पर क्लिक करें. नया क्रेडेंशियल, OAuth 2.0 Client ID में दिखता है.
  7. डाउनलोड की गई JSON फ़ाइल को credentials.json के तौर पर सेव करें और उसे अपनी वर्क डायरेक्ट्री में ले जाएं.

Google क्लाइंट लाइब्रेरी इंस्टॉल करना

  • Python के लिए Google क्लाइंट लाइब्रेरी इंस्टॉल करना:

    pip install --upgrade google-api-python-client google-auth-httplib2 google-auth-oauthlib
    

सैंपल कॉन्फ़िगर करें

  1. अपनी वर्किंग डायरेक्ट्री में, quickstart.py नाम की एक फ़ाइल बनाएं.
  2. quickstart.py में यह कोड शामिल करें:

    forms/quickstart/quickstart.py
    from apiclient import discovery
    from httplib2 import Http
    from oauth2client import client, file, tools
    
    SCOPES = "https://www.googleapis.com/auth/forms.body"
    DISCOVERY_DOC = "https://forms.googleapis.com/$discovery/rest?version=v1"
    
    store = file.Storage("token.json")
    creds = None
    if not creds or creds.invalid:
      flow = client.flow_from_clientsecrets("client_secrets.json", SCOPES)
      creds = tools.run_flow(flow, store)
    
    form_service = discovery.build(
        "forms",
        "v1",
        http=creds.authorize(Http()),
        discoveryServiceUrl=DISCOVERY_DOC,
        static_discovery=False,
    )
    
    # Request body for creating a form
    NEW_FORM = {
        "info": {
            "title": "Quickstart form",
        }
    }
    
    # Request body to add a multiple-choice question
    NEW_QUESTION = {
        "requests": [
            {
                "createItem": {
                    "item": {
                        "title": (
                            "In what year did the United States land a mission on"
                            " the moon?"
                        ),
                        "questionItem": {
                            "question": {
                                "required": True,
                                "choiceQuestion": {
                                    "type": "RADIO",
                                    "options": [
                                        {"value": "1965"},
                                        {"value": "1967"},
                                        {"value": "1969"},
                                        {"value": "1971"},
                                    ],
                                    "shuffle": True,
                                },
                            }
                        },
                    },
                    "location": {"index": 0},
                }
            }
        ]
    }
    
    # Creates the initial form
    result = form_service.forms().create(body=NEW_FORM).execute()
    
    # Adds the question to the form
    question_setting = (
        form_service.forms()
        .batchUpdate(formId=result["formId"], body=NEW_QUESTION)
        .execute()
    )
    
    # Prints the result to show the question has been added
    get_result = form_service.forms().get(formId=result["formId"]).execute()
    print(get_result)
    

सैंपल चलाएं

  1. अपनी वर्किंग डायरेक्ट्री में, यह सैंपल बनाएं और चलाएं:

    python3 quickstart.py
    
  1. पहली बार सैंपल चलाने पर, यह आपको ऐक्सेस की अनुमति देने का अनुरोध करता है:
    1. अगर आपने अपने Google खाते में पहले से साइन इन नहीं किया है, तो मांगे जाने पर साइन इन करें. अगर आपने एक से ज़्यादा खातों में साइन इन किया हुआ है, तो अनुमति देने के लिए एक खाता चुनें.
    2. स्वीकार करें पर क्लिक करें.

    आपका Python ऐप्लिकेशन, Google Forms API को चलाता है और उसे कॉल करता है.

    अनुमति की जानकारी, फ़ाइल सिस्टम में सेव की जाती है. इसलिए, अगली बार सैंपल कोड चलाने पर, आपसे अनुमति लेने के लिए नहीं कहा जाता.

अगले चरण