CData Python Connector for SharePoint Excel Services はじめに:インストールから接続まで

Mohsin Turki
Mohsin Turki
Technical Marketing Engineer
CData Python Connector のインストール、ライセンス認証、SharePoint Excel Services のデータ への接続設定方法を解説します。

このガイドでは、CData Python Connector をインストールし、ライセンスを認証して、 ライブの SharePoint Excel Services のデータ に接続する方法を解説します。以下の内容を学べます:

  1. コネクタのインストールとライセンスの適用
  2. SharePoint Excel Services への接続設定
  3. Python アプリケーションでライブの SharePoint Excel Services のデータ を統合する手順

それでは始めましょう。

前提条件

  1. お使いのマシンに Python(v3.8 以上)がインストールされていること。 こちらからダウンロードしてインストールしてください。
  2. 有効なライセンスを持つ CData Python Connector for SharePoint Excel Services。 こちらからダウンロードしてインストールしてください。
  3. 有効な資格情報を持つアクティブな SharePoint Excel Services アカウント。

ステップ 1:インストールとライセンス認証


1.1 コネクタのインストール

Python の依存関係について:Python がインストールされていることを確認してください。 CData Python Connector は Python バージョン 3.8、3.9、3.10、3.11、3.12 をサポートしています。 この範囲外のバージョンを使用している場合は、virtualenv で仮想環境を作成する必要がある場合があります。

Windows でのインストール

  1. コネクタ ZIP をダウンロードして解凍し、 目的の場所に配置します。
  2. ターミナルまたはコマンドプロンプトを開き、.whl ファイルがある場所(/win/ ディレクトリ内)に移動します。 例:
    ~\Downloads\ExcelServicesPythonConnector\CData.Python.ExcelServices\win\Python312\64
  3. pip を使用して .whl ファイルをインストールします。 Python のバージョンとアーキテクチャに一致するファイルを使用してください。例:
            pip install cdata_excelservices_connector-24.0.9111-cp312-cp312-win_amd64.whl
            
  4. pip list を実行してインストールを確認します。 cdata-excelservices-connector が表示されれば、インストールは成功です。

Linux/Mac でのインストール

  1. コネクタ ZIP をダウンロードして解凍し、 目的の場所に配置します。
  2. ターミナルを開き、解凍したインストールディレクトリに移動して、 /unix/ または /mac/ フォルダ内の .tar.gz ファイルを確認します。 例:
    ~/Downloads/ExcelServicesPythonConnector/CData.Python.ExcelServices/unix/
    または
    CData.Python.ExcelServices/mac/
  3. pip を使用して .tar.gz ファイルをインストールします。例:
            pip install cdata_excelservices_connector-24.0.####-python3.tar.gz
            
  4. pip list を実行してインストールを確認します。 cdata-excelservices-connector が表示されれば、インストールは成功です。

1.2 ライセンスの認証

購入後、CData Orders チームからメールでライセンスキーを受け取っているはずです。 ライセンスキーは次のような 25 文字のコードです:XXXXX-XXXXX-XXXXX-XXXXX-XXXXX

Windows でのライセンス認証

  1. ターミナルまたはコマンドプロンプトを開き、Python インストールの site-packages ディレクトリ内の cdata フォルダに移動します。
  2. パスの例:
    C:\Users\Username\AppData\Local\Programs\Python\Python312\Lib\site-packages\cdata\installlic_excelservices
  3. ライセンスキーを指定して license-installer.exe ファイルを実行します:
            .\license-installer.exe [YOUR LICENSE KEY HERE]
            
  4. プロンプトが表示されたら、登録済みの名前とメールアドレスを入力して認証を完了します。

Linux/macOS でのライセンス認証

  1. ターミナルを開き、Python の site-packages ディレクトリ内の cdata フォルダに移動します。 このディレクトリは通常、以下の場所にあります:
    ~/Library/Python/3.12/lib/python/site-packages/cdata/installlic_excelservices または
    /usr/local/lib/python3.12/site-packages/cdata/installlic_excelservices
  2. Linux/Mac ライセンスインストーラースクリプトを実行します:
            ./install-license.sh [YOUR LICENSE KEY HERE]
            
  3. プロンプトが表示されたら、登録済みの名前とメールアドレスを入力して認証を完了します。

ライセンスに関するよくある質問

ライセンスは複数のマシンで使用できますか?
はい、サブスクリプションプランによります。注文確認メールを確認するか、アカウント担当者にお問い合わせください。 アカウント担当者が不明な場合は、[email protected] までお問い合わせください。

ライセンスキーを紛失しました。どうすれば取得できますか?
注文番号を添えて [email protected] までメールでお問い合わせいただければ、ライセンスキーを再送いたします。

ライセンスを別のマシンに移行できますか?
はい。以下のリンクからライセンス移行リクエストを送信する必要があります:

https://www.cdata.com/lic/transfer/

ライセンス移行リクエストが送信され、処理されると、プロダクトキーに追加のアクティベーションが付与されます。 その後、新しいマシンで正規ライセンスを認証できます。 このプロセスが完了すると、以前のマシンのライセンスは無効になります。

ライセンスに関するその他のご質問は、[email protected] までお問い合わせください。 ライセンスの確認と管理は、セルフサービスポータル portal.cdata.com から行えます。


ステップ 2:接続設定

インストールとライセンス認証が完了したら、CData Python Connector を使用して接続を確立できます。

2.1 接続の確立

CData Python Connector for SharePoint Excel Services は、標準の import 文でインポートできる Python モジュールとして公開されており、 それを基にアプリケーションコードを構築できます。

コネクタには sys_tablessys_tablecolumns などの 組み込みメタデータツールも含まれており、SharePoint Excel Services のデータ の 利用可能なテーブル、カラム、構造メタデータを含むスキーマ検出を実行できます。

以下の例では、認証プロパティを使用して SharePoint Excel Services への接続を確立し、 特定のテーブルからカラム名を取得します。

以下の接続文字列の値を実際の資格情報に置き換え、必要に応じて '[TABLE NAME]' のテーブル名を更新してください。

SharePoint Excel Services インスタンスで MFA や追加のセキュリティ要件を使用している場合は、 接続文字列に PasscodeSecurityToken などのプロパティを含める必要がある場合があります。 サポートされているプロパティの完全なリストについては、 コネクタヘルプドキュメントConnection String Options セクションを参照してください (コネクタの help ディレクトリ内でも参照可能です)。



import cdata.excelservices as mod

# 設定したプロパティを使用して接続を確立
conn = mod.connect(
    "URL=https://myorg.sharepoint.com;"
    "[email protected];"
    "Password=password;"
    "File=Book1.xlsx;"
)

# 指定したテーブルのカラム名をクエリ
cur = conn.cursor()
cur.execute("SELECT ColumnName FROM sys_tablecolumns WHERE TableName = '[TABLE NAME]'")

print("テーブルのカラム:")
for row in cur.fetchall():
    print(row[0])

cur.close()
conn.close()

このコードは SharePoint Excel Services に接続し、メタデータカタログをクエリして、 指定したテーブルのすべてのカラム名を出力します。完全な コネクタドキュメント を参照して、追加のスキーマ、テーブル、その他のサポートされているメタデータビューを 探索するための SQL クエリの変更方法を学べます。


2.2 利用可能な接続設定

ワークブックへの接続

どちらのSharePoint エディションをお使いでも、File を Excel ワークブックに設定してください。このパスは以下のプロパティからの相対パスになります。

  • Library:デフォルトではShared Documents ライブラリが使用されます。このプロパティを使って、組織内の別のドキュメントライブラリを指定してみてください。例えば、OneDrive for Business に接続する場合は、このプロパティを"Documents" に設定します。
  • Folder:このプロパティを使って、ライブラリ内のサブフォルダへのパスを指定できます。パスはLibrary で指定されたライブラリ名に関連します。

テーブルとしてのスプレッドシートデータへの接続

CData 製品では、基底API で利用可能なオブジェクトに基づいて、使用可能なテーブルを検出していきます。

API では異なるAPI オブジェクトを表示します。スプレッドシートの構成とSharePoint のバージョンに基づいてAPI を選択しましょう。

  • OData: OData API を使用すると、Excel で[挿入]->[テーブル]をクリックして作成されたExcel テーブルオブジェクト(範囲やスプレッドシートではありません)から定義されたテーブルにアクセスできます。OData API に接続する際、ワークブックにテーブルオブジェクトが定義されていない場合は、CData 製品がテーブルを返さないことがあります。テーブルとしてスプレッドシートまたは範囲に接続するには、UseRESTAPI をtrue に設定してください。
  • REST: REST API を使用すると、Excel テーブルオブジェクト、範囲、およびスプレッドシートから定義されたテーブルへアクセスできます。これがデフォルトの API です。範囲およびスプレッドシートから多数の行をリクエストすることは REST API によって制限されており、CData 製品では返される行数をデフォルトで 100 に制限しています。また CData 製品では、デフォルトで1行目からカラム名を検出します。これを無効にするには、Header を設定してください。

DefineTables を追加設定すると、Excel の範囲の構文を使用して、範囲に基づいてテーブルを定義できます。大きすぎる範囲は、API によって制限されます。

SharePoint オンプレミスへの接続

URL をサーバー名もしくはIP アドレスに設定しましょう。さらに、SharePointVersion と認証値を設定します。

SharePoint OnPremises を認証するには、AuthScheme を認証タイプに設定し、必要に応じてUserPassword を設定してください。

Note:SharePoint On-Premises 2010 に接続する場合は、 UseRESTAPI をtrue に設定する必要があります。

    Windows(NTLM)

    最も一般的な認証タイプです。CData 製品では NTLM をデフォルトとして使用するよう事前設定されています。Windows のUserPassword を設定して接続してください。

    その他の認証方法については、ヘルプドキュメントの「はじめに」をご覧ください。


    2.3 よくある接続の問題

    認証エラー

    解決策:UserPassword、および SharePoint Excel Services で必要な追加の認証プロパティが正しいことを確認してください。 データソースが MFA、SSO、またはパスコードを強制している場合は、 接続文字列に正しいプロパティが含まれていることを確認してください。 サポートされている認証プロパティの完全なリストについては、 コネクタドキュメントを参照するか、 認証設定の検証については [email protected] までお問い合わせください。

    サーバーに接続できない

    解決策:接続文字列のエンドポイント URL が正しく、 環境からアウトバウンド HTTPS トラフィックが許可されていることを確認してください。 ファイアウォールやプロキシの背後にいる場合は、Python がサービス URL に 到達できることを確認してください。 ネットワーク設定の詳細やポート要件については、 [email protected] までお問い合わせください。

    テーブルが見つからない

    解決策:SQL クエリの DatabaseSchema、およびテーブル名を確認してください。 sys_tablessys_tablecolumns などのメタデータビューを使用して、 SharePoint Excel Services のデータ が公開している正確なテーブル名とカラム名を確認してください。 テーブル名が大文字小文字を区別する場合は、クエリで正しい大文字小文字を使用していることを確認してください。

    モジュールが見つからない、またはインポートエラー

    解決策:Python Connector が正しい環境にインストールされていることを確認してください。 pip list を実行して、コネクタ (cdata-excelservices-connector)が存在することを確認してください。 仮想環境を使用している場合は、スクリプトを実行する前に正しい環境を有効にしてください。

    接続文字列エラー

    解決策:プロパティのフォーマットが正しくない、またはセミコロンが欠落していると、 コネクタが接続設定を解析できなくなります。 接続文字列を確認し、各プロパティが正しい Key=Value; 形式に従っていることを確認してください。 SharePoint Excel Services でサポートされているプロパティ名については、Python Connector ドキュメントを参照してください。

    接続に関するその他のトラブルシューティングについては、完全なエラーメッセージを添えて (機密の資格情報をマスクしてから)[email protected] までお問い合わせください。


    ステップ 3:次のステップ

    コネクタがインストールされ、接続が設定されたら、 Python でライブの SharePoint Excel Services のデータ を操作できます。以下のリソースを参照して、 統合を拡張し、複雑なワークフローを構築してください。

    Python Client 記事タイトル

    サポート

    ご不明な点がございましたら、お気軽にお問い合わせください:


    FAQ

    インストールとライセンス

    • コネクタのインストールには管理者権限が必要ですか?
      Python Connector のインストール自体には管理者権限は必要ありませんが、 ライセンスの適用やシステム全体の Python 環境へのインストール時には必要になる場合があります。
    • 複数の Python 環境にコネクタをインストールできますか?
      はい。環境ごと(venv、Conda、システム Python)に一度インストールしてください。 各環境は独自のパッケージを管理し、認証後はマシンライセンスを使用します。

    接続

    • 認証情報はどのように提供しますか?
      mod.connect() を呼び出す際に、接続文字列で認証プロパティを渡します。 サポートされているプロパティの完全なリストについては、コネクタヘルプドキュメントを参照してください。
    • テーブルとカラムを検出するにはどうすればよいですか?
      sys_tablessys_tablecolumns などのメタデータビューを使用してください。 例:
      SELECT * FROM sys_tables;
    • プロキシサーバー経由で接続できますか?
      はい。接続文字列に ProxyServerProxyPortProxyUser などの プロキシプロパティを含めてください。 詳細については、ドキュメントの Firewall & Proxy セクションを参照してください。

    パフォーマンスとトラブルシューティング

    • クエリが遅いのはなぜですか?
      以下を確認してください:
      • フィルター(WHERE 句)を追加して結果サイズを削減する
      • 頻繁に変更されないデータにはキャッシュを使用する
      • DatabaseSchema の選択情報が正しいことを確認する
      • 最適化のサポートについては [email protected] までお問い合わせください
    • ログを有効にするにはどうすればよいですか?
      接続文字列にログプロパティを直接追加します。例: Logfile=/path/log.txt;Verbosity=5;
      Verbosity はログの詳細レベルを制御します。 サポートを依頼する際は、このログファイルを [email protected] に送信してください。
    • どのポートを開放する必要がありますか?
      ほとんどのクラウドサービスは、ポート 443 でアウトバウンド HTTPS を必要とします。 ソース固有の要件については、 [email protected] までお問い合わせください。
    • インポート時に「Module not found」と表示されるのはなぜですか?
      スクリプトを実行する Python 環境にコネクタがインストールされていることを確認してください。 pip list または pip show を使用してインストールを確認してください。

    一般

    • サポートされている SQL 構文はどこで確認できますか?
      コネクタドキュメントの SQL Compliance セクションを参照してください。
    • コネクタはどのくらいの頻度で更新されますか?
      CData はメジャーアップデートを年次でリリースし、定期的なパッチを提供します。 最新バージョンについては、アカウントポータルを確認するか、サポートにお問い合わせください。
    • その他のコード例はどこで確認できますか?
      オンラインドキュメントには、接続、クエリ、フィルタリング、ページング、 メタデータビューの操作に関する例が含まれています。

    この FAQ で解決しない場合は、 [email protected] までお問い合わせください。

はじめる準備はできましたか?

SharePoint Excel Services Connector のコミュニティライセンスをダウンロード:

 ダウンロード

詳細:

SharePoint Excel Services Icon SharePoint Excel Services Python Connector お問い合わせ

SharePoint Excel Services データ連携用のPython Connector ライブラリ。pandas、SQLAlchemy、Dash、petl などの主要なPython ツールにSharePoint Excel Services をシームレスに統合。