Freigeben über


Problembehandlung des Web-Connectors

Was ist der Unterschied zwischen Web.Contents, Web.BrowserContents und Web.Page?

Web.Contents

  • Web.Contents wird zum Abrufen von Webinhalten verwendet, auf die nicht über einen Browser zugegriffen werden muss, z. B. CSV-Dateien, JSON-API-Ergebnisse usw.
  • Es unterstützt die größte Vielfalt an Authentifizierungsoptionen.
  • Sie kann in Cloudumgebungen wie Power Query Online ohne Gateway verwendet werden.

Web.Page

  • Web.Page ist eine Legacyfunktion zum Abrufen von Webinhalten, auf die über einen Browser zugegriffen werden muss, z. B. HTML-Seiten.
  • Es basiert auf Internet Explorer. Aufgrund dieser Anforderung wird sie in der Benutzeroberfläche durch Web.BrowserContentsersetzt. Web.Page ist jedoch aus Gründen der Abwärtskompatibilität weiterhin auf der Engine-Ebene verfügbar.
  • Ein Gateway ist erforderlich, um es in Cloudumgebungen wie Power Query Online zu verwenden.

Web.BrowserContents

  • Web.BrowserContents ist eine aktualisierte Funktion zum Abrufen von Webinhalten, auf die über einen Browser zugegriffen werden muss, z. B. HTML-Seiten.
  • In der Benutzeroberfläche ersetzt Web.BrowserContentsWeb.Page, da Web.Page auf Internet Explorer basiert.
  • Web.BrowserContents wurde ursprünglich auf Chromium erstellt, aber es verwendet jetzt das WebView2-Steuerelement von Microsoft Edge.
  • Ein Gateway ist erforderlich, um es in Cloudumgebungen wie Power Query Online zu verwenden.

In der folgenden Tabelle sind die Unterschiede zusammengefasst.

Web.Contents Web.Page Web.BrowserContents
Inhalt ohne Browser (.txt/.csv Dateien, JSON usw.) x
Browserinhalt (HTML) x x
Unterstützte Authentifizierungstypen Anonym
Fenster
Basic
Web-API
Organisationskonto
Anonym
Windows (nur die Anmeldeinformationen des aktuellen Benutzers)
Web-API
Anonym
Fenster
Basic
Web-API
Erfordert ein Gateway in Cloudhosts N J J
Zurzeit generiert von Alle Hosts Excel und Power Query Online Power BI Desktop
Basierend auf .NET Internet Explorer WebView2-Steuerelement von Microsoft Edge

Hinweis

POST-Anforderungen können nur bei Verwendung Web.Contentsanonym erfolgen.

Warnungen "Dieser Browser wird nicht mehr unterstützt" in der Webansicht

Beim Importieren einer Webseite können Sie eine Vorschau der Seite mithilfe der Registerkarte "Webansicht " im Navigatordialogfeld von Power Query anzeigen. In dieser Vorschau wird manchmal eine Warnung wie "Dieser Browser wird nicht mehr unterstützt" angezeigt. Wenn diese Warnung auftritt, liegt dies in der Regel daran, dass die Webansicht derzeit die Webansichtsvorschau mit Internet Explorer rendert, die von einigen Websites nicht mehr unterstützt wird. Diese Warnung wirkt sich jedoch nur auf die Webansicht aus und wirkt sich nicht auf den Webconnector selbst aus. Solange Sie die Connectors basierend auf Web.Contents oder Web.BrowserContents (und nicht Web.Page) verwenden, können Sie solche Warnungen sicher ignorieren. Weitere Informationen zu den verschiedenen Webconnectors und ihren zugrunde liegenden Technologien finden Sie unter "Was ist der Unterschied zwischen Web.Contents, Web.BrowserContents und Web.Page?".

Behandeln dynamischer Webseiten

Webseiten, die ihre Inhalte dynamisch laden, erfordern möglicherweise eine spezielle Behandlung. Wenn Sie sporadische Fehler in Ihren Webabfragen feststellen, ist es möglich, dass Sie versuchen, auf eine dynamische Webseite zuzugreifen. Ein häufiges Beispiel für diesen Fehlertyp ist:

  1. Sie aktualisieren eine Abfrage, die eine Verbindung mit der Website herstellt.
  2. Es wird ein Fehler angezeigt (z. B. "die Spalte 'Foo' der Tabelle wurde nicht gefunden").
  3. Sie aktualisieren die Abfrage erneut.
  4. Es tritt kein Fehler auf.

Diese Arten von Problemen sind in der Regel auf das Timing zurückzuführen. Seiten, die ihre Inhalte dynamisch laden, können manchmal inkonsistent sein, da sich der Inhalt ändern kann, nachdem der Browser das Laden als abgeschlossen betrachtet hat. Manchmal lädt der Webconnector den HTML-Code herunter, nachdem alle dynamischen Inhalte geladen wurden. In anderen Fällen werden die Änderungen noch ausgeführt, wenn sie den HTML-Code herunterlädt, was zu sporadischen Fehlern führt.

Die Lösung besteht darin, die WaitFor Option "Web.BrowserContents" zu verwenden, die entweder eine Auswahl oder eine Zeitdauer angibt, die vor dem Herunterladen des HTML-Codes gewartet werden soll.

Wie können Sie feststellen, ob eine Seite dynamisch ist? Normalerweise ist es ziemlich einfach. Öffnen Sie die Seite in einem Browser, und sehen Sie sich das Laden an. Wenn der Inhalt sofort angezeigt wird, handelt es sich um eine normale HTML-Seite. Wenn sie dynamisch angezeigt wird oder sich im Laufe der Zeit ändert, handelt es sich um eine dynamische Seite.

Verwenden eines Gateways mit dem Webconnector

Sowohl Web.BrowserContents als auch Web.Page erfordern die Verwendung eines lokalen Datengateways, wenn sie in einem Clouddienst veröffentlicht werden, z. B. Power BI-Semantikmodelle oder Datenflüsse von Power Apps. (Derzeit unterstützt Dynamics 365 Customer Insights die Verwendung eines Gateways nicht.)

Wenn Sie Web.Page verwenden und eine Please specify how to connect Fehlermeldung erhalten, stellen Sie sicher, dass Internet Explorer 10 oder höher auf dem Computer installiert ist, auf dem Ihr lokales Datengateway gehostet wird.

Wenn Sie Web.BrowserContents verwenden und einen We were unable to find the WebView2 runtime Fehler erhalten, stellen Sie sicher, dass die WebView2-Laufzeit auf dem Computer installiert ist, auf dem Ihr lokales Datengateway gehostet wird. Die Fehlermeldung sollte einen Link zum WebView2-Laufzeitinstallationsprogramm bereitstellen. Wenn Sie die Laufzeit installiert haben, aber weiterhin den Fehler sehen, stellen Sie sicher, dass das Gatewaydienstkonto (in der Regel PBIEgwService) Zugriff auf den Installationsspeicherort der WebView2-Laufzeit hat (z. B. C:\Programme (x86)\Microsoft\EdgeWebView).

Fehler "Fehler beim Initialisieren des Webbrowsers" bei Verwendung von Web.BrowserContents

Dieser Fehler kann auftreten, wenn der Prozess, der Web.BrowserContents aufruft, im Modus mit erhöhten Rechten ausgeführt wird, da WebView2 die Ausführung mit Administratorrechten derzeit nicht unterstützt.

Verwenden von Web.Page anstelle von "Web.BrowserContents"

In Fällen, in denen Sie Web.Page anstelle von Web.BrowserContents verwenden, können Sie immer noch Web.Page manuell verwenden.

In Power BI Desktop können Sie die ältere Web.Page Funktion verwenden, indem Sie die Option "Webtabellen-Rückschluss aktivieren " deaktivieren:

  1. Wählen Sie auf der Registerkarte " Datei " die Option "Optionen" und "Einstellungsoptionen>" aus.

  2. Wählen Sie im Abschnitt "Global " den Power Query-Editor aus.

  3. Deaktivieren Sie die Option "Webtabellen-Rückschluss aktivieren", und wählen Sie dann "OK" aus.

  4. Starten Sie Power BI Desktop neu.

    Hinweis

    Derzeit können Sie die Verwendung Web.BrowserContents in Power BI Desktop, das für Power BI Report Server optimiert ist, nicht deaktivieren.

Sie können auch eine Kopie einer Web.Page Abfrage aus Excel abrufen. So kopieren Sie den Code aus Excel:

  1. Wählen Sie auf der Registerkarte "Daten" die Option "Aus dem Web" aus.
  2. Geben Sie die Adresse im Dialogfeld "Aus dem Web " ein, und wählen Sie dann "OK" aus.
  3. Wählen Sie in Navigator die Daten aus, die Sie laden möchten, und wählen Sie dann "Daten transformieren" aus.
  4. Wählen Sie auf der Registerkarte " Start " von Power Query den erweiterten Editor aus.
  5. Kopieren Sie im erweiterten Editor die M-Formel.
  6. Wählen Sie in der App, die Web.BrowserContents verwendet wird, den leeren Abfrage-Connector aus.
  7. Wenn Sie in Power BI Desktop kopieren:
    1. Wählen Sie auf der Registerkarte " Start " den erweiterten Editor aus.
    2. Fügen Sie die kopierte Web.Page Abfrage in den Editor ein, und wählen Sie dann "Fertig" aus.
  8. Wenn Sie in Power Query Online kopieren:
    1. Fügen Sie in der leeren Abfrage die kopierte Web.Page Abfrage in die leere Abfrage ein.
    2. Wählen Sie ein lokales Datengateway aus, das verwendet werden soll.
    3. Wählen Sie Weiteraus.

Sie können den folgenden Code auch manuell in eine leere Abfrage eingeben. Stellen Sie sicher, dass Sie die Adresse der Webseite eingeben, die Sie laden möchten.

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

Erfassen von Webanforderungen und Zertifikatsperrung

Wir stärkten die Sicherheit von Webverbindungen, um Ihre Daten zu schützen. Dieses Update bedeutet jedoch, dass bestimmte Szenarien, z. B. das Erfassen von Webanforderungen mit Fiddler, standardmäßig nicht mehr funktionieren. So aktivieren Sie diese Szenarien:

  1. Öffnen Sie Power BI Desktop.

  2. Wählen Sie auf der Registerkarte " Datei " die Option "Optionen" und "Einstellungsoptionen>" aus.

  3. Deaktivieren Sie unter "Optionen" unter "Globale>Sicherheit" die Option "Zertifikatsperrüberprüfung aktivieren".

    Screenshot des aktivierten Kontrollkästchens

  4. Wählen Sie OK aus.

  5. Starten Sie Power BI Desktop neu.

Von Bedeutung

Das Deaktivieren der Aktivierung der Zertifikatsperrüberprüfung macht Webverbindungen weniger sicher.

Um dieses Szenario in der Gruppenrichtlinie festzulegen, verwenden Sie den Schlüssel "DisableCertificateRevocationCheck" unter dem Registrierungspfad "Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft Power BI Desktop". Durch Festlegen von "DisableCertificateRevocationCheck" auf 0 wird die Überprüfung immer aktiviert (was das Funktionieren von Fiddler und ähnlicher Software verhindert), und das Festlegen von "DisableCertificateRevocationCheck" auf 1 deaktiviert die Überprüfung immer (wodurch Fiddler und ähnliche Software funktionieren können).

Ändern der Authentifizierungsmethode

In einigen Fällen müssen Sie möglicherweise die Authentifizierungsmethode ändern, die Sie für den Zugriff auf eine bestimmte Website verwenden. Wenn diese Änderung erforderlich ist, wechseln Sie zu "Ändern der Authentifizierungsmethode".

Authentifizierung für beliebige Dienste

Einige Dienste unterstützen die Möglichkeit, dass sich der Webconnector bei der OAuth/Microsoft Entra ID-Authentifizierung sofort authentifizieren kann. Diese Authentifizierung funktioniert jedoch in den meisten Fällen nicht.

Beim Versuch, sich zu authentifizieren, wenn der folgende Fehler auftritt:

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

Screenshot des Authentifizierungsdialogfelds mit einem Fehler beim Herstellen einer Verbindung mit einem Endpunkt, der OAuth nicht mit dem Webconnector unterstützt.

Wenden Sie sich an den Dienstbesitzer. Sie müssen entweder die Authentifizierungskonfiguration ändern oder einen benutzerdefinierten Connector erstellen.

Web connector verwendet HTTP 1.1 für die Kommunikation

Der Power Query-Webconnector kommuniziert mit einer Datenquelle mit HTTP 1.1. Wenn Ihre Datenquelle erwartet, dass sie mit HTTP 1.0 kommuniziert, wird möglicherweise ein Fehler angezeigt, wie z. B. 500 Internal Server Error.

Es ist nicht möglich, Power Query zur Verwendung von HTTP 1.0 zu wechseln. Power Query sendet immer, Expect:100-continue wenn ein Textkörper vorhanden ist, um zu vermeiden, dass eine möglicherweise große Nutzlast übergeben wird, wenn der anfängliche Aufruf selbst fehlschlägt (z. B. aufgrund eines Mangels an Berechtigungen). Derzeit kann dieses Verhalten nicht geändert werden.

Herstellen einer Verbindung mit Microsoft Graph

Power Query unterstützt derzeit keine Verbindung mit Microsoft Graph-REST-APIs. Weitere Informationen: Fehlende Unterstützung für Microsoft Graph in Power Query