Sdílet prostřednictvím


Řešení potíží s webovým konektorem

Jaký je rozdíl mezi Web.Contents, Web.BrowserContents a Web.Page?

Web.Contents

  • Web.Contents slouží k načítání webového obsahu, ke kterému není potřeba přistupovat prostřednictvím prohlížeče, jako jsou soubory CSV, výsledky rozhraní JSON API atd.
  • Podporuje širokou škálu možností ověřování.
  • Dá se použít v cloudových prostředích, jako je Power Query Online, bez brány.

Web.Page

  • Web.Page je starší funkce pro načítání webového obsahu, ke kterému je potřeba přistupovat prostřednictvím prohlížeče, jako jsou stránky HTML.
  • Je postavená na Internet Exploreru. Kvůli tomuto požadavku se nahrazuje v uživatelském rozhraní znakem Web.BrowserContents. Web.Page Bude však nadále k dispozici na úrovni motoru kvůli zpětné kompatibilitě.
  • Brána se vyžaduje k jeho použití v cloudových prostředích, jako je Power Query Online.

Web.BrowserContents

  • Web.BrowserContents je aktualizovaná funkce pro načítání webového obsahu, ke kterému je potřeba přistupovat prostřednictvím prohlížeče, jako jsou stránky HTML.
  • V uživatelském rozhraní Web.BrowserContents se nahrazuje Web.Page, protože Web.Page je založen na Aplikaci Internet Explorer.
  • Web.BrowserContents byl původně postaven na Chromiu, ale nyní používá ovládací prvek WebView2 microsoft Edge.
  • Brána se vyžaduje k jeho použití v cloudových prostředích, jako je Power Query Online.

Rozdíly jsou shrnuty v následující tabulce.

Web.Contents Web.Page Web.BrowserContents
Obsah bez prohlížeče (.txt/.csv soubory, JSON atd.) linka
Obsah prohlížeče (HTML) linka linka
Podporované typy ověřování Anonymní
Windows
Basic
Webové rozhraní API
Účet organizace
Anonymní
Windows (jenom přihlašovací údaje aktuálního uživatele)
Webové rozhraní API
Anonymní
Windows
Basic
Webové rozhraní API
Vyžaduje bránu v cloudových hostitelích. N Y Y
Aktuálně vygenerováno pomocí Všichni hostitelé Excel a Power Query Online Power BI Desktop
Postaveno na .NET Internet Explorer Ovládací prvek WebView2 v Microsoft Edgi

Poznámka:

Požadavky POST lze provádět pouze anonymně při použití Web.Contents.

Upozornění "Tento prohlížeč již není podporován" ve webovém zobrazení

Při importu webové stránky můžete zobrazit náhled stránky pomocí karty Webové zobrazení v dialogovém okně navigátoru Power Query. V tomto náhledu se někdy může zobrazit upozornění, jako je například "Tento prohlížeč se už nepodporuje". V takovém případě je to obvykle proto, že webové zobrazení v současné době vykresluje náhled webového zobrazení pomocí Internet Exploreru, který už některé weby nepodporují. To ale ovlivní jenom webové zobrazení a nemá vliv na samotný webový konektor. Pokud používáte konektory založené na web.Contents nebo Web.BrowserContents (a ne Web.Page), můžete tato upozornění bezpečně ignorovat. Další informace o různých webových konektorech a jejich základních technologiích najdete v tématu Jaký je rozdíl mezi web.Contents, Web.BrowserContents a Web.Page?

Zpracování dynamických webových stránek

Webové stránky, které načítají obsah dynamicky, můžou vyžadovat zvláštní zpracování. Pokud ve webových dotazech zaznamenáte občasné chyby, je možné, že se pokoušíte získat přístup k dynamické webové stránce. Jedním z běžných příkladů tohoto typu chyby je:

  1. Aktualizujete dotaz, který se připojuje k webu.
  2. Zobrazí se chyba (například sloupec Foo tabulky nebyl nalezen).
  3. Dotaz znovu aktualizujete.
  4. Nedojde k žádné chybě.

Tyto druhy problémů jsou obvykle způsobeny načasováním. Stránky, které načítají obsah dynamicky, můžou být někdy nekonzistentní, protože obsah se může po dokončení načítání prohlížeče změnit. Webový konektor někdy stáhne kód HTML po načtení veškerého dynamického obsahu. Jindy se změny stále zpracovávají, když stáhne KÓD HTML, což vede k občasickým chybám.

Řešením je použít WaitFor možnost Web.BrowserContents, která označuje selektor nebo dobu, po kterou by se mělo čekat před stažením html.

Jak zjistíte, jestli je stránka dynamická? Obvykle je to docela jednoduché. Otevřete stránku v prohlížeči a sledujte, jak se načte. Pokud se obsah hned zobrazí, je to běžná stránka HTML. Pokud se zobrazí dynamicky nebo se v průběhu času změní, jedná se o dynamickou stránku.

Použití brány s webovým konektorem

Web.BrowserContents i Web.Page vyžadují použití místní brány dat při publikování do cloudové služby, jako jsou sémantické modely Power BI nebo toky dat Power Apps. (Dynamics 365 Customer Přehledy v současné době nepodporuje použití brány.)

Pokud používáte Web.Page a zobrazuje se Please specify how to connect vám chyba, ujistěte se, že máte na počítači, který je hostitelem místní brány dat, nainstalovaný Internet Explorer 10 nebo novější.

Pokud používáte Web.BrowserContents a zobrazuje se We were unable to find the WebView2 runtime chyba, ujistěte se, že máte na počítači, který je hostitelem místní brány dat, nainstalovaný modul runtime WebView2. Chybová zpráva by měla obsahovat odkaz na instalační program modulu runtime WebView2. Pokud jste nainstalovali modul runtime, ale stále se zobrazuje chyba, ujistěte se, že účet služby brány (obvykle PBIEgwService) má přístup k umístění instalace modulu runtime WebView2 (například C:\Program Files (x86)\Microsoft\EdgeWebView).

Při použití web.BrowserContents došlo k chybě při inicializaci webového prohlížeče

K této chybě může dojít, pokud proces volání Web.BrowserContents běží v režimu se zvýšenými oprávněními , protože WebView2 v současné době nepodporuje spuštění s oprávněními správce.

Použití Web.Page místo web.BrowserContents

V případech, kdy potřebujete místo Web.PageWeb.BrowserContents, můžete stále ručně použít Web.Page.

V Power BI Desktopu můžete použít starší Web.Page funkci zrušením zaškrtnutí políčka Povolit odvozování webových tabulek :

  1. Na kartě Soubor vyberte Možnosti a nastavení>Možnosti.

  2. V části Globální vyberte Editor Power Query.

  3. Zrušte zaškrtnutí políčka Povolit odvození webové tabulky a pak vyberte OK.

  4. Restartujte Power BI Desktop.

    Poznámka:

    V současné době nemůžete vypnout použití Web.BrowserContents v Power BI Desktopu optimalizovaném pro Server sestav Power BI.

Kopii dotazu můžete získat také z Excelu Web.Page . Zkopírování kódu z Excelu:

  1. Na kartě Data vyberte z webu.
  2. Zadejte adresu do dialogového okna Z webu a pak vyberte OK.
  3. V Navigátoru zvolte data, která chcete načíst, a pak vyberte Transformovat data.
  4. Na kartě Domů Power Query vyberte Rozšířený editor.
  5. V Rozšířený editor zkopírujte vzorec M.
  6. V aplikaci, která používá Web.BrowserContents, vyberte konektor Prázdný dotaz .
  7. Pokud kopírujete do Power BI Desktopu:
    1. Na kartě Domů vyberte Rozšířený editor.
    2. Vložte zkopírovaný Web.Page dotaz v editoru a pak vyberte Hotovo.
  8. Pokud kopírujete do Power Query Online:
    1. Do prázdného dotazu vložte zkopírovaný Web.Page dotaz do prázdného dotazu.
    2. Vyberte místní bránu dat, která se má použít.
    3. Vyberte Další.

Do prázdného dotazu můžete také ručně zadat následující kód. Ujistěte se, že zadáte adresu webové stránky, kterou chcete načíst.

let
  Source = Web.Page(Web.Contents("<your address here>")),
  Navigation = Source{0}[Data]
in
  Navigation

Zachytávání webových požadavků a odvolání certifikátů

Posílili jsme zabezpečení webových připojení, abychom ochránili vaše data. To ale znamená, že některé scénáře, jako je zachytávání webových požadavků pomocí Fiddleru, už nebudou ve výchozím nastavení fungovat. Povolení těchto scénářů:

  1. Otevřete Power BI Desktop.

  2. Na kartě Soubor vyberte Možnosti a nastavení>Možnosti.

  3. V části Možnosti v části Globální>zabezpečení zrušte zaškrtnutí políčka Povolit odvolání certifikátu.

    Snímek obrazovky s zaškrtnutou možností Povolit odvolání certifikátu

  4. Vyberte OK.

  5. Restartujte Power BI Desktop.

Důležité

Mějte na paměti, že zrušení zaškrtnutí políčka Povolit odvolání certifikátu způsobí, že webová připojení budou méně zabezpečená.

Pokud chcete tento scénář nastavit v zásadách skupiny, použijte klíč DisableCertificateRevocationCheck v cestě registru Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft Power BI Desktop. Nastavení DisableCertificateRevocationCheck na 0 vždy povolí kontrolu (zastavení Fiddleru a podobného softwaru v práci) a nastavení DisableCertificateRevocationCheck na 1 vždy zakáže kontrolu (povolení Fiddleru a podobného softwaru).

Změna metody ověřování

V některých případech možná budete muset změnit metodu ověřování, kterou používáte pro přístup k určitému webu. Pokud je tato změna nutná, přejděte do části Změna metody ověřování.

Ověřování v libovolných službách

Některé služby podporují možnost webového konektoru ověřit ověřování pomocí ověřování OAuth/Microsoft Entra ID. Ve většině případů to ale nebude fungovat.

Pokud se při pokusu o ověření zobrazí následující chyba:

We were unable to connect because this credential type isn’t supported for this resource. Please choose another credential type.

Při připojování ke koncovému bodu, který nepodporuje OAuth s webovým konektorem, došlo k chybě.

Obraťte se na vlastníka služby. Buď potřebují změnit konfiguraci ověřování, nebo vytvořit vlastní konektor.

Webový konektor používá ke komunikaci protokol HTTP 1.1.

Webový konektor Power Query komunikuje se zdrojem dat pomocí protokolu HTTP 1.1. Pokud váš zdroj dat očekává komunikaci pomocí protokolu HTTP 1.0, může se zobrazit chyba, například 500 Internal Server Error.

Power Query není možné přepnout na použití HTTP 1.0. Power Query vždy odešle Expect:100-continue text, aby se zabránilo předání potenciálně velké datové části, když počáteční volání může selhat (například kvůli nedostatku oprávnění). V současné době toto chování nelze změnit.

Připojení do Microsoft Graphu

Power Query v současné době nepodporuje připojení k rozhraním MICROSOFT Graph REST API. Další informace: Nedostatek podpory pro Microsoft Graph v Power Query

Viz také