Web
まとめ
Item | 説明 |
---|---|
リリース状態 | 一般公開 |
製品 | Excel Power BI (データセット) Power BI (データフロー) Fabric (Dataflow Gen2) Power Apps (データフロー) Dynamics 365 Customer Insights |
サポートされている認証の種類 | Web.Contents Anonymous Windows Basic Web API 組織アカウント Web.BrowserContents Anonymous Windows (プレビュー機能) Basic (プレビュー機能) Web API (プレビュー機能) Web.Page Anonymous Windows (現在のユーザーの資格情報のみ) Web API |
関数リファレンス ドキュメント | Web.Contents Web.BrowserContents Web.Page |
注意
デプロイ スケジュールにより、またホスト固有の機能があることにより、ある製品に存在する機能が他の製品にはない場合があります。
前提条件
- Web.Page にはインターネット エクスプローラー 10 が必要です。
サポートされる機能
- URL への接続
- 上級
- テキスト定数とパラメーターの組み合わせを使用して URL を構築する
- コマンド タイムアウトの指定
- HTTP 要求ヘッダー パラメーターの定義 (Web.Contents のみ)
Power Query Desktop を使用して Web データを読み込む
Power Query Desktop を使用して Web サイトからデータを読み込むには、次のようにします。
[Power BI でデータ Web を>取得する] または [Excel のデータ] リボンで [Web から] を選択します。
[基本] ボタンを選択し、テキスト ボックスに URL アドレスを入力します。 たとえば、
https://en.wikipedia.org/wiki/List_of_states_and_territories_of_the_United_States
と入力します。 [OK] をクリックします。入力した URL アドレスが無効な場合は、
が表示されます。 URL テキスト ボックスの横に警告アイコンが表示されます。
Web サイトに接続する前に、より高度な URL を作成する必要がある場合は、「高度な URL を使用して Web データを読み込む」に移動します。
この Web サイトで使用する認証方法を選択します。 この例では、 [匿名] を選択します。 次に、これらの設定を適用するレベル (この場合 https://en.wikipedia.org/は ) を選択します。 次に、 [接続](Connect) を選択します。
このコネクタで使用できる認証方法は次のとおりです。
[匿名] : Web ページに資格情報が必要ない場合は、この認証方法を選択します。
[Windows] : Web ページに Windows の資格情報が必要な場合は、この認証方法を選択します。
[基本] : Web ページに基本的なユーザー名とパスワードが必要な場合は、この認証方法を選択します。
[Web API] : 接続している Web リソースで、認証目的で API キーが使用される場合は、この方法を選択します。
[組織アカウント] : Web ページに組織アカウントの資格情報が必要な場合は、この認証方法を選択します。
注意
レポートを Power BI サービスにアップロードする場合は、認証方法として [匿名] 、 [Windows] 、 [基本] のみを使用できます。
認証方法に選択するレベルによって、URL のどの部分に認証方法が適用されるかが決まります。 最上位の Web アドレスを選択した場合、ここで選択した認証方法が、その URL アドレスまたはそのアドレス内のサブアドレスに使用されます。 ただし、サブアドレスごとに異なる認証方法が必要になる可能性があるため、最上位の URL アドレスを特定の認証方法に設定しないほうがよい場合があります。 たとえば、1 つの SharePoint サイトの 2 つの別個のフォルダーにアクセスし、それぞれ異なる Microsoft アカウントを使用してアクセスする必要がある場合などです。
一度特定の Web サイト アドレスの認証方法を設定したら、その URL アドレスまたはサブアドレスの認証方法を再度選択する必要はありません。 たとえば、このダイアログでアドレスとして
https://en.wikipedia.org/
を選択した場合、このアドレスで始まる Web ページで、認証方法を再度選択することは求められません。注意
後で認証方法を変更する必要がある場合は、「認証方法の変更」に移動します。
[ナビゲーター] ダイアログでテーブルを選択すると、Power Query エディターで [データの変換] を選択してデータを変換することも、 [読み込み] を選択してデータを読み込むこともできます。
[ナビゲーター] ダイアログの右側には、テーブルのコンテンツが表示されます。それらを選択して変換や読み込みを行うことができます。 どのテーブルに目的のデータが含まれているか不明な場合は、 [Web ビュー] タブを選択できます。Web ビューを使用すると、その Web ページの全コンテンツを表示して、そのサイトで検出された各テーブルを強調表示することができます。 強調表示されているテーブルの上にあるチェック ボックスをオンにすると、そのテーブルからデータを取得できます。
[ナビゲーター] ダイアログの左下にある [例を使用してテーブルを追加] ボタンを選択することもできます。 この選択により、Web ページのコンテンツをプレビューし、抽出するデータのサンプル値を入力できる、対話型ウィンドウが表示されます。 この機能の使用について詳しくは、「例を提供して Web ページ データを取得する」をご覧ください。
Power Query Online を使用して Web データを読み込む
Power Query Online を使用して Web サイトからデータを読み込むには、次のようにします。
[データの取得] ダイアログ ボックスで、 [Web ページ] または [Web API] のいずれかを選択します。
ほとんどのケースで、Web ページ コネクタを選択することをお勧めします。 セキュリティ上の理由から、このコネクタでオンプレミス データ ゲートウェイを使用する必要があります。 Web ページ コネクタにはゲートウェイが必要です。HTML ページはブラウザー コントロールを使用して取得され、セキュリティ上の問題が発生する可能性があるためです。 Web API コネクタではブラウザー コントロールを使用しないので、この懸念はありません。
場合によっては、API または Web に格納されているファイルを指し示す URL を使用したほうがよい場合があります。 そのようなシナリオで、Web API コネクタ (またはファイル固有のコネクタ) を使用すると、オンプレミスのデータ ゲートウェイを使用することなく先に進むことができます。
また、URL がファイルを指し示す場合は、Web ページ コネクタではなく、特定のファイル コネクタを使用してください。
テキスト ボックスに URL アドレスを入力します。 この例では、「
https://en.wikipedia.org/wiki/List_of_states_and_territories_of_the_United_States
」と入力します。オンプレミス データ ゲートウェイの名前を選択します。
Web ページへの接続に使用する認証方法を選択します。
このコネクタで使用できる認証方法は次のとおりです。
[匿名] : Web ページに資格情報が必要ない場合は、この認証方法を選択します。
[Windows] : Web ページに Windows の資格情報が必要な場合は、この認証方法を選択します。
[基本] : Web ページに基本的なユーザー名とパスワードが必要な場合は、この認証方法を選択します。
[組織アカウント] : Web ページに組織アカウントの資格情報が必要な場合は、この認証方法を選択します。
認証方法を選択したら、 [次へ] を選択します。
[ナビゲーター] ダイアログでテーブルを選択してから、Power Query エディターで [データの変換] を選択してデータを変換することができます。
高度な URL を使用して Web データを読み込む
Power Query Desktop で [Web からデータ>を取得] を選択すると、ほとんどの場合、[基本] 設定に URL を入力します。 ただし、場合によっては、別個のパーツから URL を組み立てたり、接続にタイムアウトを設定したり、個別の URL ヘッダー データを指定したりする必要があります。 この場合は、 [Web から] ダイアログ ボックスで [高度] オプションを選択します。
ダイアログの [URL パーツ] セクションを使用して、データの取得に使用する URL を組み立てます。 [URL パーツ] セクションの URL の最初の部分は通常、その URI のスキーム、権限、パス (http://contoso.com/products/
など) で構成されます。 2 つ目のテキスト ボックスには、Web サイトに提供された情報をフィルター処理するために使用するクエリやフラグメントを含めることができます。 複数のパーツを追加する必要がある場合は、 [パーツの追加] を選択して別の URL フラグメント テキスト ボックスを追加します。 URL の各部分を入力すると、 [OK] を選択すると使用される完全な URL が、 [URL プレビュー] ボックスに表示されます。
POST 要求でデータが処理されるのにかかる時間に応じて、その要求が Web サイトに接続された状態を継続する時間を延長する必要がある場合があります。 POST と GET の両方の既定のタイムアウトは 100 秒です。 このタイムアウト値が短すぎる場合は、 [分単位のコマンド タイムアウト (省略可能)] を使用して、接続された状態を継続する分数を延長することができます。
また、 [HTTP 要求ヘッダー パラメーター (省略可能)] ドロップダウン ボックスを使用して、Web サイトに送信する POST に特定の要求ヘッダーを追加することもできます。 選択できる要求ヘッダーの説明を次の表に示します。
要求ヘッダー | 説明 |
---|---|
Accept | 受け入れ可能な応答メディアの種類を指定します。 |
Accept-Charset | テキスト形式の応答コンテンツで受け入れ可能な文字セットを示します。 |
Accept-Encoding | 応答で受け入れ可能な応答コンテンツのエンコードを示します。 |
Accept-Language | 応答で優先される自然言語のセットを示します。 |
Cache-Control | クライアント要求とサーバー応答で、ディレクティブによって指定されるキャッシュ ポリシーを示します。 |
Content-Type | コンテンツのメディアの種類を示します。 |
If-Modified-Since | このフィールドで指定した日付以降に Web コンテンツが変更されたかどうかを条件付きで判定します。 コンテンツが変更されていない場合は、状態コードが 304 のヘッダーのみがサーバーから返されます。 コンテンツが変更された場合は、要求されたリソースと状態コード 200 がサーバーから返されます。 |
Prefer | 特定のサーバーの動作がクライアントで望まれるが、要求を正常に完了するためには必須ではないことを示します。 |
Range | 選択された表現データの 1 つまたは複数の部分範囲を指定します。 |
Referer | ターゲット URI が取得されたリソースの URI 参照を指定します。 |
Web からファイルをインポートする
通常、Power Query Desktop でローカルのオンプレミス ファイルをインポートするときは、特定のファイルタイプ コネクタを使用してそのファイルをインポートします。たとえば、JSON ファイルをインポートする場合は JSON コネクタ、CSV ファイルをインポートする場合は CSV コネクタを使用します。 ただし、Power Query Desktop を使用していて、インポートするファイルが Web 上にある場合は、Web コネクタを使用してそのファイルをインポートする必要があります。 ローカルの場合と同様に、コネクタで既定で読み込まれるテーブルが表示されます。このテーブルは、後で読み込みまたは変換を行うことができます。
Web コネクタでは、次のファイルの種類をサポートしています。
- Access データベース
- CSV ドキュメント
- Excel ワークブック
- JSON
- テキスト ファイル
- HTML ページ
- XML テーブル
たとえば、次の手順を使用して、https://contoso.com/products
の Web サイトに JSON ファイルをインポートできます。
[データの取得] ダイアログ ボックスで、Web コネクタを選択します。
[基本] ボタンを選択し、次のように [URL] ボックスにアドレスを入力します。
http://contoso.com/products/Example_JSON.json
[OK] を選択します。
この URL に初めてアクセスする場合は、認証の種類として [匿名] を選択してから、 [接続] を選択します。
これで、JSON ファイルからインポートされたデータが入力された状態で Power Query エディターが開きます。 Power Query エディターで [表示] タブを選択し、 [数式バー] を選択して、エディターで数式バーをオンにします。
ご覧のように、指定した URL から Web コンテンツが Web コネクタによって返され、その URL で指定された適切なドキュメントの種類 (この例では
Json.Document
) で Web コンテンツが自動的にラップされます。