この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

CDP Python コネクタ

CDP Python コネクタにより、Data Cloud データの価値を引き出し、拡張することができます。このコネクタは Query API を使用し、データを Data Cloud から Python に抽出します。また、このコネクタにより Pandas DataFrame にあるデータを取得できます。環境内のデータを使用して、ビジュアルデータモデルを作成したり、強力な分析操作を行ったり、強力な機械学習や AI モデルを構築することが可能です。

前提条件

CDP Python コネクタを設定するには、次の前提条件を完了します。
  • PyPI (Python Package Index) リポジトリから CDP Python コネクタをインストールします。
    1pip install salesforce-cdp-connector

    正常にインストールが完了すると、「Successfully Installed salesforce-cdp-connector-<version> (salesforce-cdp-connector-<バージョン番号> を正常にインストールしました)」というメッセージが表示されます。

    メモ

  • CDP Python コネクタを認証します。コネクタは次の 2 つの方法で認証できます。
    • ユーザー名とパスワードで認証する
      1. 接続アプリケーションを作成し、その基本情報を完了します。
      2. [OAuth 設定の有効化] を選択します。
      3. Salesforce が OAuth 時にアプリケーションにコールバックするコールバック URL (エンドポイント) を入力します。
      4. 接続アプリケーションに適用する OAuth 範囲を選択します。OAuth 範囲では接続アプリケーションの権限が定義されます。これは、アプリケーションの認証後にトークンとして付与されます。OAuth トークン名は括弧で囲みます。
      5. [保存] をクリックして、変更を有効にします。
      6. [次へ] をクリックして、[接続アプリケーションを管理する] に移動します。
      7. コンシューマー鍵コンシューマーの秘密をコピーします。これらは、Connection オブジェクトの作成時に使用します。
    • OAuth エンドポイントを使用して認証する
      1. 接続アプリケーションを作成し、その基本情報を完了します。
      2. [OAuth 設定の有効化] を選択します。
      3. Salesforce が OAuth 時にアプリケーションにコールバックするコールバック URL (エンドポイント) を入力します。
      4. 接続アプリケーションに適用する OAuth 範囲を選択します。OAuth 範囲では接続アプリケーションの権限が定義されます。これは、アプリケーションの認証後にトークンとして付与されます。OAuth トークン名は括弧で囲みます。
      5. [保存] をクリックして、変更を有効にします。
      6. [次へ] をクリックして、[接続アプリケーションを管理する] に移動します。
      7. コンシューマー鍵コンシューマーの秘密をコピーします。これらは、Connection オブジェクトの作成時に使用します。
      8. この URL をブラウザーに貼り付けると、コールバック URL にリダイレクトされます。リダイレクトされた URL の形式は、<callback url>?code=<CODE>. になります。。アドレスバーから CODE を抽出します。
      9. POST コールを <YOUR_ORG_URL>/services/oauth2/token?code=<CODE>&grant_type=authorization_code&client_id=<clientId>&client_secret=<clientSecret>&redirect_uri=<callback_uri> に対して実行します。POST コールの応答は、access_token と refresh_token を含む JSON になります。

CDP Python コネクタの使用

CDP Python コネクタの設定では次の操作を行う必要があります。

  • 接続オブジェクトを作成する
  • カーソルオブジェクトを作成し、Data Cloud を照会する
  • Data Cloud データを取得する

接続オブジェクトを作成する

接続オブジェクトは 2 つの方法で作成できます。
  • ユーザー名とパスワードを使用 ここで説明したパラメーターを使用し、ユーザー名とパスワードを指定して接続オブジェクトをインスタンス化します。
    パラメーター 説明
    login_url Salesforce 組織の URL
    user_name Salesforce 組織のユーザー名
    password Salesforce 組織のパスワード
    client_id 接続アプリケーションによって生成されたコンシューマーキー
    client_secret 接続アプリケーションによって生成されたコンシューマーの秘密
    1from salesforcecdpconnector.connection import SalesforceCDPConnection
    2conn = SalesforceCDPConnection(
    3        'login_url', 
    4        'user_name', 
    5        'password', 
    6        'client_id', 
    7        'client_secret'
    8    )
  • OAuth エンドポイントを使用 ここで説明したパラメーターを使用して、OAuth エンドポイントによって接続オブジェクトをインスタンス化します。
    パラメーター 説明
    login_url Salesforce 組織の URL
    client_id Salesforce 組織のユーザー名
    client_secret Salesforce 組織のパスワード
    core_token 「OAuth エンドポイントを使用して認証する」セクションの手順 9 で取得した access_token。
    refresh_token 「OAuth エンドポイントを使用して認証する」セクションの手順 9 で取得した refresh_token。
    1from salesforcecdpconnector.connection import SalesforceCDPConnection
    2conn = SalesforceCDPConnection(login_url, 
    3       client_id='<client_id>', 
    4       client_secret='<client_secret>', 
    5       core_token='<core token>'
    6       refresh_token='<refresh_token>'
    7   )

カーソルオブジェクトを作成し、Data Cloud を照会する

クエリを実行するためのカーソルオブジェクトを作成します。クエリを実行すると、カーソルがそのクエリを Data Cloud に渡し、結果を取得します。
1cur = conn.cursor()
2cur.execute('<query>')

Data Cloud データを取得する

データは次の 3 つの方法で取得できます。
  • 1 回に 1 行取得: fetchone() メソッドを使用して、結果�� 1 回に 1 行取得します。
    1results = cur.fetchone()
  • すべての行を取得: fetchall() メソッドを使用して、1 回のコールですべてのクエリの結果を取得します。
    1results = cur.fetchall()
  • Dataframe で結果を取得: get_pandas_dataframe() メソッドを使用することで、結果を Pandas DataFrame で取得できます。
    1dataframe = conn.get_pandas_dataframe('<query>')