All Products
Search
Document Center

Alibaba Cloud SDK:Gunakan Alibaba Cloud Python SDK di IDE

Last Updated:Jul 16, 2026

Pelajari cara menggunakan Alibaba Cloud Python SDK dengan PyCharm di Windows.

Prasyarat

Gunakan SDK

Gunakan proyek contoh dari OpenAPI Portal

Catatan

Jika Anda tidak dapat mengunduh proyek contoh dari OpenAPI Portal, ikuti Gunakan SDK dalam proyek yang sudah ada.

  1. Buka halaman OpenAPI Explorer, lalu pilih produk dan API. Misalnya, untuk memanggil API DescribeInstanceTypeFamilies ECS, masukkan DescribeInstanceTypeFamilies di kotak pencarian dan klik hasilnya untuk membuka halaman OpenAPI Explorer.

  2. Pada tab Parameters di kolom tengah, tentukan parameter sesuai kebutuhan bisnis Anda. Saat menentukan parameter, baca informasi pada tab Document di kolom paling kanan. Pastikan Anda memahami catatan penggunaan operasi dan deskripsi setiap parameter. Perhatikan informasi terkait penagihan. Dalam contoh ini, operasi DescribeInstanceTypeFamilies mendukung dua parameter permintaan. Anda harus menentukan nilai seperti cn-hangzhou untuk parameter RegionId. Parameter Generation bersifat opsional. Anda dapat mengatur parameter ini ke ecs-5, yang menunjukkan keluarga instans seri V. Anda dapat melihat nilai valid parameter pada tab Document.

  3. Pada tab SDK Sample Code di kolom paling kanan, pilih bahasa pemrograman dan klik Download Project untuk mengunduh proyek SDK lengkap ke komputer Anda. Kemudian, ekstrak paket tersebut.

    Atur SDK Version ke V2.0 Recommended, pilih bahasa Python, lalu klik Download Complete Project.

  4. Buka PyCharm. Klik File > Open, pilih folder proyek yang telah diekstrak, lalu klik OK pada dialog Creating Virtual Environment. Tunggu hingga PyCharm membuat lingkungan virtual dan mengunduh dependensi.

    Catatan

    Jika pengunduhan dependensi gagal, jalankan python3 setup.py install di terminal.

  5. Sebelum memanggil operasi ini, Anda harus memperoleh Pasangan Kunci Akses sebagai kredensial akses. Kami menyarankan agar Anda menggunakan Pasangan Kunci Akses milik Pengguna Resource Access Management (RAM). Untuk informasi selengkapnya, lihat bagian Buat Pasangan Kunci Akses untuk Pengguna RAM dalam topik “Buat Pasangan Kunci Akses”.

    Penting

    Setelah memperoleh Pasangan Kunci Akses milik Pengguna RAM, Anda harus mengonfigurasi Pasangan Kunci Akses tersebut dalam variabel lingkungan. Untuk informasi selengkapnya, lihat Konfigurasi variabel lingkungan di Linux, macOS, dan Windows.

  6. Jalankan kode contoh.

    Klik tab Terminal di bagian bawah PyCharm atau tekan Alt + F12. Jalankan perintah berikut:

    python ./alibabacloud_sample/sample.py
    

    Isi sample.py:

    # -*- coding: utf-8 -*-
    # File ini dibuat otomatis, jangan edit. Terima kasih.
    import os
    import sys
    
    from typing import List
    
    from alibabacloud_ecs20140526.client import Client as Ecs20140526Client
    from alibabacloud_tea_openapi import models as open_api_models
    from alibabacloud_ecs20140526 import models as ecs_20140526_models
    from alibabacloud_tea_util import models as util_models
    from alibabacloud_tea_console.client import Client as ConsoleClient
    from alibabacloud_tea_util.client import Client as UtilClient
    
    class Sample:
        def __init__(self):
            pass
    
        @staticmethod
        def create_client() -> Ecs20140526Client:
            """
            使用AK&SK初始化账号Client
    

    Output terminal:

    python ./alibabacloud_sample/sample.py
    [LOG] {"headers":{"date":"Mon, 20 May 2024 02:41:40 GMT","content-type":"application/json;charset=utf-8","content-length":"139","connection":"keep-alive","keep-alive":"timeout=25","access-control-allow-origin":"*","access-control-expose-headers":"*","x-acs-request-id":"076CAAAD-D942-583B-BEFA-C4DF8CCD60DC","x-acs-trace-id":"b31e569bd03bd37030ba2d9e5b0afbd","etag":"1Kp258uXZ5v+Tj9LKzSIaQ09"},"statusCode":200,"body":{"Instances":{"Instance":[]},"NextToken":"","PageNumber":1,"PageSize":10,"RequestId":"076CAAAD-D942-583B-BEFA-C4DF8CCD60DC","TotalCount":0}}
    
  7. Lihat hasilnya. Klik di mana saja pada jendela Run di bagian bawah konsol dan tekan Ctrl+F untuk mencari statusCode. Jika muncul "statusCode":200, panggilan berhasil.

    # -*- coding: utf-8 -*-
    # File ini dibuat otomatis, jangan edit. Terima kasih.
    import os
    import sys
    
    from typing import List
    
    from alibabacloud_ecs20140526.client import Client as Ecs20140526Client
    from alibabacloud_tea_openapi import models as open_api_models
    from alibabacloud_ecs20140526 import models as ecs_20140526_models
    from alibabacloud_tea_util import models as util_models
    from alibabacloud_tea_console.client import Client as ConsoleClient
    from alibabacloud_tea_util.client import Client as UtilClient
    
    
    class Sample:
        def __init__(self):
            pass
    
        @staticmethod
        def create_client() -> Ecs20140526Client:
            """
            使用AK&SK初始化账号Client
    
    python ./alibabacloud_sample/sample.py
    [LOG] {"headers":{"date":"Mon, 20 May 2024 02:41:40 GMT","content-type":"application/json;charset=utf-8","content-length":"139","connection":"keep-alive","keep-alive":"timeout=25","access-control-allow-origin":"*","access-control-expose-headers":"*","x-acs-request-id":"076CAAAD-D942-583B-BEFA-C4DF8CCD60DC","x-acs-trace-id":"b31e569bd03bd37030ba62d9e5b0afbd","etag":"1Kp258uXZ5v+Tj9LKzSIaQ09..."},"statusCode":200,"body":{"Instances":{"Instance":[]},"NextToken":"","PageNumber":1,"PageSize":10,"RequestId":"076CAAAD-D942-583B-BEFA-C4DF8CCD60DC","TotalCount":0}}
    

Gunakan SDK dalam proyek yang sudah ada

  1. Dapatkan SDK.

    Buka SDK Center dan pilih produk, seperti Elastic Compute Service. Atur SDK Version ke V2.0 dan Language ke Python.

    Pilih tab Quick Start, salin perintah instalasi pip install alibabacloud_ecs20140526==4.1.5 dari bagian Installation, lalu jalankan di terminal lokal Anda.

  2. Instal SDK.

    Di PyCharm, tekan Alt+F12 untuk membuka terminal. Tempel perintah instalasi dan tekan Enter.

    (.venv) PS D:\ide\PythonProjects\pythonProject> pip install alibabacloud_ecs20140526==4.1.5
    Collecting alibabacloud_ecs20140526==4.1.5
      Obtaining dependency information for alibabacloud_ecs20140526==4.1.5 from https://files.pythonhosted.org/packages/6e/20/b10ac267a8625257dd846df4574c9c171126fbf6h149385af5dee128d756/alibabacloud_ecs20140526-4.1.5-py3-none-any.whl.metadata
      Using cached alibabacloud_ecs20140526-4.1.5-py3-none-any.whl.metadata (2.3 kB)
    Collecting alibabacloud-tea-util<1.0.0,>=0.3.12 (from alibabacloud_ecs20140526==4.1.5)
      Using cached alibabacloud_tea_util-0.3.12-py3-none-any.whl
    Collecting alibabacloud-tea-openapi<1.0.0,>=0.3.9 (from alibabacloud_ecs20140526==4.1.5)
      Using cached alibabacloud_tea_openapi-0.3.9-py3-none-any.whl
    Collecting alibabacloud-openapi-util<1.0.0,>=0.2.1 (from alibabacloud_ecs20140526==4.1.5)
      Using cached alibabacloud_openapi_util-0.2.2-py3-none-any.whl
    Collecting alibabacloud-endpoint-util<1.0.0,>=0.0.3 (from alibabacloud_ecs20140526==4.1.5)
    
  3. Buat file Python.

    Klik kanan nama proyek dan pilih New > Python File. Masukkan sdk_demo sebagai nama file, pilih Python File, lalu tekan Enter.

  4. Inisialisasi client.

    Inisialisasi client ECS sebelum memanggil API.

    Penting
    1. Anda harus menggunakan Pasangan Kunci Akses untuk menyelesaikan verifikasi identitas saat menginisialisasi client. Dalam hal ini, Anda harus memperoleh Pasangan Kunci Akses terlebih dahulu. Untuk informasi selengkapnya tentang cara memperoleh Pasangan Kunci Akses, lihat Buat Kunci Akses.

    2. Setelah memperoleh Pasangan Kunci Akses milik Pengguna RAM, Anda harus mengonfigurasi Pasangan Kunci Akses tersebut dalam variabel lingkungan. Untuk informasi selengkapnya, lihat Konfigurasi variabel lingkungan di Linux, macOS, dan Windows.

    3. Untuk informasi selengkapnya tentang cara mengonfigurasi endpoint, lihat Endpoint.

    import os
    
    from alibabacloud_ecs20140526 import client as ecs_client
    from alibabacloud_tea_openapi import models as open_api_models
    
    
    def init_ecs_client():
        """
        Menginisialisasi client ECS.
    
        Fungsi ini tidak menerima argumen apa pun.
    
        Returns:
            ecs_client.Client: Objek client ECS yang telah diinisialisasi untuk operasi ECS lebih lanjut.
        """
        # Buat objek konfigurasi ECS dan baca Pasangan Kunci Akses dari variabel lingkungan.
        ecs_config = open_api_models.Config()
        ecs_config.access_key_id = os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID']
        ecs_config.access_key_secret = os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
        # Atur endpoint.
        ecs_config.endpoint = 'ecs-cn-hangzhou.aliyuncs.com'
    
        # Inisialisasi client ECS dengan konfigurasi dan kembalikan.
        return ecs_client.Client(ecs_config)
    
    
    if __name__ == '__main__':
        client = init_ecs_client()
    
  5. Panggil API. Tinjau Dokumentasi API untuk API yang dituju. Contoh berikut memanggil API DescribeRegions ECS.

    Catatan

    Setiap API memiliki objek permintaan terpisah yang mengikuti konvensi penamaan ${APIName}${Request}, seperti DescribeRegionsRequest.

    import os
    
    from alibabacloud_ecs20140526 import client as ecs_client
    from alibabacloud_tea_openapi import models as open_api_models
    from alibabacloud_ecs20140526 import models as ecs_20140526_models
    
    
    def init_ecs_client():
        """
        Menginisialisasi client ECS.
    
        Fungsi ini tidak menerima argumen apa pun.
    
        Returns:
            ecs_client.Client: Objek client ECS yang telah diinisialisasi untuk operasi ECS lebih lanjut.
        """
        # Buat objek konfigurasi ECS dan baca Pasangan Kunci Akses dari variabel lingkungan.
        ecs_config = open_api_models.Config()
        ecs_config.access_key_id = os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID']
        ecs_config.access_key_secret = os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
        # Atur endpoint.
        ecs_config.endpoint = 'ecs-cn-hangzhou.aliyuncs.com'
    
        # Inisialisasi client ECS dengan konfigurasi dan kembalikan.
        return ecs_client.Client(ecs_config)
    
    
    if __name__ == '__main__':
        # Inisialisasi client ECS.
        client = init_ecs_client()
        # Buat objek DescribeRegionsRequest.
        describeRegions_request = ecs_20140526_models.DescribeRegionsRequest()
        # Kirim permintaan describeRegions untuk mendapatkan informasi wilayah.
        response = client.describe_regions(describeRegions_request)
        print(response.body)
    
  6. Tangani exception.

    SDK Python V2.0 menangani exception melalui Tea.exceptions dengan dua jenis exception:

    1. UnretryableException: Dilempar ketika jumlah maksimum percobaan ulang tercapai akibat masalah jaringan.

    2. TeaException: Menunjukkan error layanan selama permintaan SDK.

    import os
    
    from Tea.exceptions import UnretryableException, TeaException
    from alibabacloud_ecs20140526 import client as ecs_client
    from alibabacloud_tea_openapi import models as open_api_models
    from alibabacloud_ecs20140526 import models as ecs_20140526_models
    
    
    def init_ecs_client():
        """
        Menginisialisasi client ECS.
    
        Fungsi ini tidak menerima argumen apa pun.
    
        Returns:
            ecs_client.Client: Objek client ECS yang telah diinisialisasi untuk operasi ECS lebih lanjut.
        """
        # Buat objek konfigurasi ECS dan baca Pasangan Kunci Akses dari variabel lingkungan.
        ecs_config = open_api_models.Config()
        ecs_config.access_key_id = os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID']
        ecs_config.access_key_secret = os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
        # Atur endpoint.
        ecs_config.endpoint = 'ecs-cn-hangzhou.aliyuncs.com'
    
        # Inisialisasi client ECS dengan konfigurasi dan kembalikan.
        return ecs_client.Client(ecs_config)
    
    
    if __name__ == '__main__':
        try:
            # Inisialisasi client ECS.
            client = init_ecs_client()
            # Buat objek DescribeRegionsRequest.
            describeRegions_request = ecs_20140526_models.DescribeRegionsRequest()
            # Kirim permintaan describeRegions untuk mendapatkan informasi wilayah.
            response = client.describe_regions(describeRegions_request)
            # Cetak respons.
            print(response.body)
        except UnretryableException as e:
            # Tangani exception jaringan.
            print(e)
        except TeaException as e:
            # Tangani exception layanan.
            print(e)
        except Exception as e:
            # Tangani exception lainnya.
            print(e)
    
  7. (Opsional) Salin kode contoh dari OpenAPI Portal ke file dan jalankan. Buat otomatis kode contoh SDK.

Referensi

Dokumentasi lanjutan