网络

总结

说明
发布状态 正式发布
产品 Excel
Power BI(语义模型)
Power BI(数据流)
Fabric(数据流第二代)
Power Apps(数据流)
Dynamics 365 Customer Insights
支持的身份验证类型 Web.Contents
匿名
Windows
基本
Web API
组织帐户
服务主体

Web.BrowserContents
匿名
Windows
基本
Web API

Web.Page
匿名
Windows(仅限当前用户凭据)
Web API
功能参考文档 Web.Contents
Web.BrowserContents
Web.Page

注意

如果使用的是本地数据网关或虚拟网络(VNet)数据网关,则不支持服务主体身份验证类型。

注意

POST 请求只能在使用 Web.Contents 时匿名发出。

注意

由于部署计划和主机特定的功能,某些功能可能存在于一个产品中,但不是其他功能。

先决条件

支持的功能

  • 连接到 URL
  • 高级
    • 使用文本常量和参数的组合构造 URL
    • 指定命令超时
    • 定义 HTTP 请求标头参数(仅限 Web.Contents

使用 Power Query Desktop 加载 Web 数据

使用 Power Query Desktop 从网站加载数据:

  1. 在 Power BI 中选择“获取数据 > Web”,或者在 Excel 的“数据”功能区中选择“来自 Web”。 有关详细信息,请访问 何处获取数据

  2. 选择基本按钮,然后在文本框中输入 URL 地址。 例如,输入 https://en.wikipedia.org/wiki/List_of_states_and_territories_of_the_United_States。 然后选择确定

    输入网站 URL 的连接对话框的屏幕截图。

    如果输入的 URL 地址无效,URL 文本框中旁边会显示 警告图标。

    如果在连接到网站之前需要构造更高级的 URL,请转到使用高级 URL 加载 Web 数据

  3. 如果首次连接到此网站,请选择用于此网站的身份验证方法。 在此示例中,选择匿名。 然后选择要应用这些设置的级别,在本例中为 https://en.wikipedia.org/。 然后选择连接

    选择 Web 凭据的身份验证对话框的屏幕截图。

    此连接器可用的身份验证方法包括:

    • 匿名:如果网页不需要任何凭据,请选择此身份验证方法。

    • Windows:如果网页需要 Windows 凭据,请选择此身份验证方法。

    • 基本:如果网页需要基本用户名和密码,请选择此身份验证方法。

    • Web API:如果要连接到的 Web 资源使用 API 密钥进行身份验证,请选择此方法。

    • 组织帐户:如果网页需要组织帐户凭据,请选择此身份验证方法。

    为身份验证方法选择的级别决定了 URL 中哪些部分应用了身份验证方法。 如果选择顶级 Web 地址,此处选择的身份验证方法将用于该 URL 地址或该地址中的任何子地址。 但是,你可能不希望将顶级 URL 地址设置为特定的身份验证方法,因为不同的子地址可能需要不同的身份验证方法。 例如,如果您访问单个 SharePoint 网站的两个单独文件夹,并且想要使用不同的 Microsoft 帐户来访问每个文件夹。

    为特定网站地址设置身份验证方法后,无需再次选择该 URL 地址或任何子地址的身份验证方法。 例如,如果在此对话框中选择 https://en.wikipedia.org/ 地址,则以此地址开头的任何网页都不需要再次选择身份验证方法。

    注意

    如果稍后需要更改身份验证方法,请转到更改身份验证方法

  4. 导航器对话框中,可以选择表,然后通过选择转换数据在 Power Query 编辑器中转换数据,或者通过选择加载加载数据。

    “导航器”的屏幕截图,其中选择了美国的州。

    导航器对话框的右侧显示选择用于转换或加载的表的内容。 如果不确定哪个表包含你感兴趣的数据,则可以选择“Web 视图” 选项卡。Web 视图允许你查看网页的全部内容,并突出显示在该网站上检测到的每个表。 可以选择突出显示的表上方的复选框,从该表中获取数据。

    导航器对话框的左下角,还可以选择使用示例添加表按钮。 此选择提供一个交互式窗口,你可以在其中预览网页的内容并输入要提取的数据的示例值。 有关使用此功能的详细信息,请转到通过提供示例获取网页数据

使用 Power Query Online 加载 Web 数据

使用 Power Query Online 从网站加载数据:

  1. 在“获取数据”页中,选择“网页”或“Web API”。 有关详细信息,请转到在何处获取数据

    这是在“获取数据”页上选择网页或 Web API 连接器时的屏幕截图。

    在大多数情况下,需要选择网页连接器。 出于安全原因,您需要使用 本地数据网关 来连接此连接器。 网页连接器需要网关,因为 HTML 页面使用浏览器控件进行检索,这涉及潜在的安全问题。 此问题与 Web API 连接器无关,因为后者不使用浏览器控件。

    在某些情况下,你可能想要使用指向 API 或存储在 Web 上的文件的 URL。 在这些方案中,Web API 连接器(或特定于文件的连接器)允许在不使用本地数据网关的情况下向前移动。

    另请注意,如果 URL 指向某个文件,则应使用特定的文件连接器,而不是网页连接器。

  2. 在文本框中输入 URL 地址。 在这个例子中,输入 https://en.wikipedia.org/wiki/List_of_states_and_territories_of_the_United_States

    你在其中输入网页 URL 的联机登录页面上半部分的屏幕截图。

  3. 选择本地数据网关的名称。

    输入本地数据网关的联机登录页面上半部分的屏幕截图。

  4. 选择用于连接到网页的身份验证方法。

    选择相应身份验证方法的身份验证对话框的屏幕截图。

    此连接器可用的身份验证方法包括:

    • 匿名:如果网页不需要任何凭据,请选择此身份验证方法。

    • Windows:如果网页需要 Windows 凭据,请选择此身份验证方法。

    • 基本:如果网页需要基本用户名和密码,请选择此身份验证方法。

    • 组织帐户:如果网页需要组织帐户凭据,请选择此身份验证方法。

    • 服务主体:如果网页需要租户 ID、服务主体客户端 ID 和服务主体密钥,请选择此身份验证方法。

    选择身份验证方法并填写所需的凭据后,请选择“下一步”

  5. 导航器 对话框中,您可以选择一个表,然后在 Power Query 编辑器中通过选择 转换数据来转换数据。

    显示网页状态的导航器对话框的屏幕截图。

使用高级 URL 加载 Web 数据

在 Power Query Desktop 中选择“获取数据”>“来自 Web”时,大多数情况下在“基本”设置中输入 URL。 但是,在某些情况下,你可能想要从其单独的部分组装 URL、为连接设置超时或提供单独的 URL 标头数据。 在这种情况下,请在从 Web 对话框中选择高级选项。

Web 连接页的屏幕截图,其中选择了“Web 高级 URL 程序集”选项。

使用对话框的 URL 部分部分来组合要用于获取数据的 URL。 URL 部分中的第一部分 URL 很可能由 URI 的架构、颁发机构和路径组成(例如,http://contoso.com/products/)。 第二个文本框可以包含用于筛选提供给网站的信息的任何查询或片段。 如果需要添加多个部分,请选择添加部分以添加另一个 URL 片段文本框。 当您输入 URL 的每个部分时,在您选择 确定 后使用的完整 URL 显示在 URL 预览 框中。

根据 POST 请求处理数据所需的时间,可能需要延长请求继续连接到网站的时间。 POST 和 GET 的默认超时时间为 100 秒。 如果此超时时间过短,可以使用可选的 命令超时(以分钟为单位) 以延长保持连接状态的分钟数。

还可以使用可选的 HTTP 请求标头参数下拉框将特定请求标头添加到发送到网站的 POST。 下表介绍了可选择的请求标头。

请求头 说明
接受 指定可接受的响应媒体类型。
Accept-Charset 指示文本响应内容中可接受的字符集。
Accept-Encoding 指示响应中可接受的响应内容编码。
Accept-Language 指示响应中首选的自然语言集。
缓存控制 指示客户端请求和服务器响应中由指令指定的缓存策略。
内容类型 (Content-Type) 指示内容的媒体类型。
If-Modified-Since 有条件地确定自此字段中指定的日期以来 Web 内容是否已更改。 如果内容未更改,则服务器仅响应具有 304 状态代码的标头。 如果内容确实发生更改,服务器将返回请求的资源以及状态代码 200。
首选 指示客户端首选特定服务器行为,但成功完成请求不需要特定服务器行为。
范围 指定所选表示形式数据的一个或多个子范围。
引用方 为从中获取目标 URI 的资源指定 URI 引用。

从 Web 导入文件

通常,在 Power Query Desktop 中导入本地文件时,可以使用特定的文件类型连接器导入该文件,例如,用于导入 JSON 文件或 CSV 连接器以导入 CSV 文件。 但是,如果使用 Power Query Desktop 并且要导入的文件位于 Web 上,则必须使用 Web 连接器导入该文件。 正如在本地情况下,你会看到连接器默认加载的表,然后你可以选择加载或转换。

Web 连接器支持以下文件类型:

例如,可以使用以下步骤在 https://contoso.com/products 网站上导入 JSON 文件:

  1. 获取数据对话框中,选择 Web 连接器。

  2. 选择基本按钮并在 URL 框中输入地址,例如:

    http://contoso.com/products/Example_JSON.json

    Web 连接对话框的屏幕截图,其中包含要从 Web 导入的 JSON 文件。

  3. 选择“确定”

  4. 如果首次访问此 URL,请选择 匿名 作为身份验证类型,然后选择 连接

  5. Power Query 编辑器现在打开,其中包含从 JSON 文件导入的数据。 如果尚未打开,请在 Power Query 编辑器中选择 "视图 选项卡" 然后选择 公式栏 以在编辑器中打开公式栏。

    Power Query 编辑器的屏幕截图,其中突出显示了打开的公式栏。

    如此处所示,Web 连接器从提供的 URL 返回 Web 内容,然后自动将 Web 内容包装到 URL 指定的相应文档类型(在本示例中Json.Document)。