การเริ่มต้น Python อย่างรวดเร็ว

การเริ่มต้นอย่างรวดเร็วจะอธิบายวิธีการตั้งค่าและเรียกใช้แอปที่เรียกใช้ Google Workspace API

คู่มือเริ่มใช้งานฉบับย่อของ Google Workspace จะใช้ไลบรารีของไคลเอ็นต์ API ในการจัดการกับ รายละเอียดขั้นตอนการตรวจสอบสิทธิ์และการให้สิทธิ์ เราขอแนะนำว่า คุณใช้ไลบรารีไคลเอ็นต์สำหรับแอปพลิเคชันของคุณเอง การเริ่มต้นอย่างรวดเร็วนี้ใช้ วิธีการตรวจสอบสิทธิ์ที่ง่ายขึ้นซึ่งเหมาะสำหรับการทดสอบ ของคุณ สำหรับสภาพแวดล้อมของการใช้งานจริง เราขอแนะนำให้เรียนรู้เกี่ยวกับ การตรวจสอบสิทธิ์และการให้สิทธิ์ ก่อน การเลือกข้อมูลเข้าสู่ระบบ ที่เหมาะกับแอปของคุณ

สร้างแอปพลิเคชันบรรทัดคำสั่ง Python ที่ส่งคำขอไปยัง Google ฟอร์ม API

วัตถุประสงค์

  • ตั้งค่าสภาพแวดล้อมของคุณ
  • ติดตั้งไลบรารีของไคลเอ็นต์
  • ตั้งค่าตัวอย่าง
  • เรียกใช้ตัวอย่าง

ข้อกำหนดเบื้องต้น

คุณต้องมีข้อกำหนดเบื้องต้นต่อไปนี้เพื่อเรียกใช้การเริ่มต้นอย่างรวดเร็วนี้

  • บัญชี Google

ตั้งค่าสภาพแวดล้อมของคุณ

ตั้งค่าสภาพแวดล้อมเพื่อให้การเริ่มต้นอย่างรวดเร็วนี้เสร็จสมบูรณ์

เปิดใช้ API

ก่อนใช้ Google APIs คุณต้องเปิดใช้ API เหล่านี้ในโปรเจ็กต์ Google Cloud คุณสามารถเปิด API ได้ตั้งแต่ 1 รายการขึ้นไปในโปรเจ็กต์ Google Cloud เดียว

หากใช้โปรเจ็กต์ Google Cloud ใหม่เพื่อเริ่มต้นใช้งานอย่างรวดเร็วนี้ให้เสร็จสมบูรณ์ ให้กำหนดค่า หน้าจอขอความยินยอม OAuth แล้วเพิ่มตัวคุณเองเป็นผู้ใช้ทดสอบ หากคุณเคยดำเนินการแล้ว ทําตามขั้นตอนนี้สําหรับโปรเจ็กต์ที่อยู่ในระบบคลาวด์เรียบร้อยแล้ว ให้ข้ามไปยังส่วนถัดไป

  1. ในคอนโซล Google Cloud ให้ไปที่เมนู > API และ บริการ > หน้าจอขอความยินยอม OAuth

    ไปที่หน้าจอขอความยินยอม OAuth

  2. เลือกประเภทผู้ใช้เป็นภายใน แล้วคลิกสร้าง
  3. กรอกแบบฟอร์มการลงทะเบียนแอป แล้วคลิกบันทึกและดำเนินการต่อ
  4. ในตอนนี้ คุณสามารถข้ามการเพิ่มขอบเขต แล้วคลิกบันทึกและดำเนินการต่อได้ ในอนาคต เมื่อคุณสร้างแอปสำหรับใช้นอก ในองค์กร Google Workspace คุณต้องเปลี่ยนประเภทผู้ใช้เป็นภายนอก จากนั้น เพิ่มขอบเขตการให้สิทธิ์ที่แอปของคุณต้องการ

  5. ตรวจสอบสรุปการลงทะเบียนแอป หากต้องการเปลี่ยนแปลง ให้คลิกแก้ไข หากแอป การลงทะเบียนถูกต้องแล้ว ให้คลิกกลับไปที่หน้าแดชบอร์ด

ให้สิทธิ์ข้อมูลเข้าสู่ระบบสำหรับแอปพลิเคชันเดสก์ท็อป

ในการตรวจสอบสิทธิ์ผู้ใช้ปลายทางและเข้าถึงข้อมูลผู้ใช้ในแอป คุณต้องดำเนินการต่อไปนี้ สร้างรหัสไคลเอ็นต์ OAuth 2.0 อย่างน้อย 1 รหัส รหัสไคลเอ็นต์ใช้เพื่อระบุ แอปเดียวไปยังเซิร์ฟเวอร์ OAuth ของ Google หากแอปทำงานบนหลายแพลตฟอร์ม คุณต้องสร้างรหัสไคลเอ็นต์แยกกันสำหรับแต่ละแพลตฟอร์ม
  1. ในคอนโซล Google Cloud ให้ไปที่เมนู > API และ บริการ > ข้อมูลเข้าสู่ระบบ

    ไปที่ข้อมูลเข้าสู่ระบบ

  2. คลิกสร้างข้อมูลเข้าสู่ระบบ > รหัสไคลเอ็นต์ OAuth
  3. คลิกประเภทแอปพลิเคชัน > แอปบนเดสก์ท็อป
  4. ในช่องชื่อ ให้พิมพ์ชื่อของข้อมูลเข้าสู่ระบบ ชื่อนี้จะแสดงเฉพาะในคอนโซล Google Cloud เท่านั้น
  5. คลิกสร้าง หน้าจอที่สร้างไคลเอ็นต์ OAuth จะปรากฏขึ้น ซึ่งจะแสดงรหัสไคลเอ็นต์ใหม่และรหัสลับไคลเอ็นต์ของคุณ
  6. คลิกตกลง ข้อมูลเข้าสู่ระบบที่สร้างขึ้นใหม่จะปรากฏในส่วนรหัสไคลเอ็นต์ OAuth 2.0
  7. บันทึกไฟล์ JSON ที่ดาวน์โหลดเป็น credentials.json และย้าย ไฟล์ลงในไดเรกทอรีที่ใช้งานอยู่

ติดตั้งไลบรารีของไคลเอ็นต์ Google

  • ติดตั้งไลบรารีของไคลเอ็นต์ Google สำหรับ Python โดยใช้คำสั่งต่อไปนี้

    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

    ข้อมูลการให้สิทธิ์จะจัดเก็บไว้ในระบบไฟล์ ดังนั้นครั้งต่อไปที่คุณเรียกใช้ตัวอย่าง คุณจะไม่ได้รับข้อความแจ้งให้ให้สิทธิ์

ขั้นตอนถัดไป