Fejlfinding af webconnectoren

Hvad er forskellen mellem Web.Contents, Web.BrowserContents og Web.Page?

Web.Contents

  • Web.Contents bruges til at hente webindhold, der ikke skal tilgås via en browser, f.eks. CSV-filer, JSON API-resultater osv.
  • Det understøtter det bredeste udvalg af godkendelsesmuligheder.
  • Den kan bruges i cloudmiljøer, f.eks. Power Query Online, uden en gateway.

Web.Page

  • Web.Page er en ældre funktion til hentning af webindhold, der skal tilgås via en browser, f.eks. HTML-sider.
  • Det er bygget på Internet Explorer. På grund af dette krav erstattes den i brugergrænsefladen med Web.BrowserContents. Vil dog Web.Page fortsat være tilgængelig på motorniveau for bagudkompatibilitet.
  • En gateway er påkrævet for at bruge den i cloudmiljøer, f.eks. Power Query Online.

Web.BrowserContents

  • Web.BrowserContents er en opdateret funktion til hentning af webindhold, der skal tilgås via en browser, f.eks. HTML-sider.
  • Erstatter i brugergrænsefladen , Web.BrowserContentsWeb.Pagefordi Web.Page er baseret på Internet Explorer.
  • Web.BrowserContents blev oprindeligt bygget på Chromium, men bruger nu Microsoft Edges WebView2-kontrolelement.
  • En gateway er påkrævet for at bruge den i cloudmiljøer, f.eks. Power Query Online.

I følgende tabel vises en oversigt over forskellene.

Web.Contents Web.Page Web.BrowserContents
Indhold, der ikke er browserindhold (.txt/.csv filer, JSON osv.) x
Browserindhold (HTML) x x
Understøttede godkendelsestyper Anonym
Windows
Grundlæggende
Web API
Organisationskonto
Anonym
Windows (kun den aktuelle brugers legitimationsoplysninger)
Web API
Anonym
Windows
Grundlæggende
Web API
Kræver en gateway i cloudværter N J J
Aktuelt genereret af Alle værter Excel og Power Query Online Power BI Desktop
Bygget på .NET Internet Explorer Microsoft Edges WebView2-kontrolelement

Bemærk

POST-anmodninger kan kun foretages anonymt, når du bruger Web.Contents.

Advarslerne "Denne browser understøttes ikke længere" i webvisningen

Når du importerer en webside, kan du få vist et eksempel på siden ved hjælp af fanen Webvisning i dialogboksen Navigator i Power Query. Denne prøveversion kan nogle gange vise en advarsel, f.eks. "Denne browser understøttes ikke længere". Når dette sker, skyldes det som regel, at webvisningen i øjeblikket gengiver webvisningseksemplet ved hjælp af Internet Explorer, som ikke længere understøttes af nogle websteder. Dette påvirker dog kun webvisningen og påvirker ikke selve webconnectoren. Så længe du bruger connectors, der er baseret på Web.Contents eller Web.BrowserContents (og ikke Web.Page), kan du trygt ignorere sådanne advarsler. Se Hvad er forskellen mellem Web.Contents, Web.BrowserContents og Web.Page? for at få flere oplysninger om de forskellige webconnectors og deres underliggende teknologier.

Håndtering af dynamiske websider

Websider, der indlæser deres indhold dynamisk, kan kræve særlig håndtering. Hvis du bemærker sporadiske fejl i dine webforespørgsler, er det muligt, at du forsøger at få adgang til en dynamisk webside. Et almindeligt eksempel på denne type fejl er:

  1. Du opdaterer en forespørgsel, der opretter forbindelse til webstedet.
  2. Du får vist en fejl (f.eks. "kolonnen "Foo" i tabellen blev ikke fundet").
  3. Du opdaterer forespørgslen igen.
  4. Der opstår ingen fejl.

Disse typer problemer skyldes normalt timing. Sider, der indlæser deres indhold dynamisk, kan nogle gange være inkonsekvente, da indholdet kan ændres, når browseren mener, at indlæsningen er fuldført. Nogle gange downloader webconnectoren HTML-koden, når alt det dynamiske indhold er indlæst. Andre gange er ændringerne stadig i gang, når HTML-koden downloades, hvilket medfører sporadiske fejl.

Løsningen er at bruge WaitFor indstillingen Web.BrowserContents, som angiver enten en selektor eller et tidsrum, der skal ventes på, før HTML-koden downloades.

Hvordan kan du se, om en side er dynamisk? Normalt er det ret enkelt. Åbn siden i en browser, og se den blive indlæst. Hvis indholdet vises med det samme, er det en almindelig HTML-side. Hvis den vises dynamisk eller ændres over tid, er det en dynamisk side.

Brug af en gateway med webconnectoren

Både Web.BrowserContents og Web.Page kræver brug af en datagateway i det lokale miljø, når den publiceres til en cloudtjeneste, f.eks. semantiske Power BI-modeller eller dataflow eller Power Apps-dataflow. (I øjeblikket understøtter Dynamics 365 Customer Insights ikke brugen af en gateway).

Hvis du bruger Web.Page og får vist en Please specify how to connect fejl, skal du sørge for, at Internet Explorer 10 eller nyere er installeret på den computer, der er vært for din datagateway i det lokale miljø.

Hvis du bruger Web.BrowserContents og får vist en We were unable to find the WebView2 runtime fejl, skal du sørge for, at WebView2 runtime er installeret på den computer, der er vært for din datagateway i det lokale miljø. Fejlmeddelelsen skal indeholde et link til installationsprogrammet til WebView2-kørsel. Hvis du har installeret kørselstidspunktet, men stadig får vist fejlen, skal du kontrollere, at gatewaytjenestekontoen (normalt PBIEgwService) har adgang til installationsplaceringen for WebView2-kørsel (f.eks. C:\Program Files (x86)\Microsoft\EdgeWebView).

"Vi stødte på en fejl under initialisering af webbrowseren"-fejl under brug af Web.BrowserContents

Denne fejl kan opstå, hvis den proces, der kalder Web.BrowserContents , kører i administratortilstand, da WebView2 i øjeblikket ikke understøtter kørsel med administratorrettigheder.

Brug Web.Page i stedet for Web.BrowserContents

I de tilfælde, hvor du skal bruge Web.Page i stedet for Web.BrowserContents, kan du stadig bruge Web.Pagemanuelt .

I Power BI Desktop kan du bruge den ældre Web.Page funktion ved at fjerne markeringen i afkrydsningsfeltet Aktivér webtabelindledning :

  1. Under fanen Filer skal du vælge Indstillinger Indstillinger>.

  2. Vælg Power Query-editor i afsnittet Global.

  3. Ryd indstillingen Aktivér webtabelindledning , og vælg derefter OK.

  4. Genstart Power BI Desktop.

    Bemærk

    I øjeblikket kan du ikke deaktivere brugen af Web.BrowserContents i Power BI Desktop optimeret til Power BI-rapportserver.

Du kan også få en kopi af en Web.Page forespørgsel fra Excel. Sådan kopierer du koden fra Excel:

  1. Vælg Fra web under fanen Data .
  2. Angiv adressen i dialogboksen Fra web , og vælg derefter OK.
  3. Vælg de data, du vil indlæse, i Navigator, og vælg derefter Transformér data.
  4. Under fanen Hjem i Power Query skal du vælge Avanceret editor.
  5. Kopiér M-formlen i Avanceret editor.
  6. I den app, der bruger Web.BrowserContents, skal du vælge connectoren Tom forespørgsel .
  7. Hvis du kopierer til Power BI Desktop:
    1. Vælg Avanceret editor under fanen Hjem.
    2. Indsæt den kopierede Web.Page forespørgsel i editoren, og vælg derefter Udført.
  8. Hvis du kopierer til Power Query Online:
    1. I den tomme forespørgsel skal du indsætte den kopierede Web.Page forespørgsel i den tomme forespørgsel.
    2. Vælg en datagateway i det lokale miljø, der skal bruges.
    3. Vælg Næste.

Du kan også angive følgende kode manuelt i en tom forespørgsel. Kontrollér, at du angiver adressen på den webside, du vil indlæse.

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

Hentning af webanmodninger og certifikatkald

Vi har styrket sikkerheden for webforbindelser for at beskytte dine data. Det betyder dog, at visse scenarier, f.eks. hentning af webanmodninger med Fiddler, ikke længere fungerer som standard. Sådan aktiverer du disse scenarier:

  1. Åbn Power BI Desktop.

  2. Under fanen Filer skal du vælge Indstillinger Indstillinger>.

  3. Under Indstillinger under Global>sikkerhed skal du fjerne markeringen af Aktivér kontrol af certifikattilbagekaldelse.

    Skærmbillede af afkrydsningsfeltet Aktivér tilbagekald af certifikat markeret.

  4. Vælg OK.

  5. Genstart Power BI Desktop.

Vigtigt

Vær opmærksom på, at hvis du fjerner markeringen af Aktivér kontrol af certifikattilbagekaldelse, bliver webforbindelserne mindre sikre.

Hvis du vil angive dette scenarie i Gruppepolitik, skal du bruge nøglen "DisableCertificateRevocationCheck" under registreringsdatabasestien "Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft\Microsoft Power BI Desktop". Hvis du angiver "DisableCertificateRevocationCheck" til 0, aktiveres kontrollen altid (hvis Fiddler og lignende software stoppes fra at fungere), og indstillingen "DisableCertificateRevocationCheck" til 1 deaktiveres altid kontrollen (aktivering af Fiddler og lignende software).

Ændring af godkendelsesmetoden

I nogle tilfælde skal du muligvis ændre den godkendelsesmetode, du bruger til at få adgang til et bestemt websted. Hvis denne ændring er nødvendig, skal du gå til Skift godkendelsesmetode.

Godkendelse til vilkårlige tjenester

Nogle tjenester understøtter muligheden for, at webconnectoren kan godkendes med OAuth/Microsoft Entra ID-godkendelse uden for æsken. Dette fungerer dog ikke i de fleste tilfælde.

Når du forsøger at godkende, hvis du får vist følgende fejl:

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

Der opstod en fejl under oprettelse af forbindelse til et slutpunkt, der ikke understøtter OAuth med webconnectoren.

Kontakt ejeren af tjenesten. De skal enten ændre godkendelseskonfigurationen eller oprette en brugerdefineret connector.

Webconnector bruger HTTP 1.1 til at kommunikere

Webconnectoren til Power Query kommunikerer med en datakilde ved hjælp af HTTP 1.1. Hvis datakilden forventer at kommunikere ved hjælp af HTTP 1.0, kan du få vist en fejl, f.eks 500 Internal Server Error. .

Det er ikke muligt at skifte Power Query til at bruge HTTP 1.0. Power Query sender altid en Expect:100-continue , når der er en brødtekst, for at undgå at overføre en muligvis stor nyttedata, når selve det indledende kald kan mislykkes (f.eks. på grund af manglende tilladelser). Denne funktionsmåde kan i øjeblikket ikke ændres.

Forbind til Microsoft Graph

Power Query understøtter i øjeblikket ikke oprettelse af forbindelse til REST API'er til Microsoft Graph. Flere oplysninger: Manglende understøttelse af Microsoft Graph i Power Query

Se også