Solução de problemas do conector da Web
Qual é a diferença entre Web.Contents, Web.BrowserContent e Web.Page?
Web.Contents
é usado para recuperar conteúdo da Web que não precisa ser acessado por meio de um navegador, como arquivos CSV, resultados da API JSON e assim por diante.- Ele suporta a maior variedade de opções de autenticação.
- Pode ser utilizado em ambientes na nuvem, como o Power Query Online, sem um gateway.
Web.Page
é uma função herdada para recuperar conteúdo da Web que precisa ser acessado por meio de um navegador, como páginas HTML.- Baseia-se no Internet Explorer. Devido a esse requisito, ele está sendo substituído na interface do usuário por
Web.BrowserContents
. No entanto,Web.Page
continuará disponível ao nível do motor para compatibilidade com versões anteriores. - É necessário um gateway para usá-lo em ambientes de nuvem, como o Power Query Online.
Web.BrowserContents
é uma função atualizada para recuperar conteúdo da Web que precisa ser acessado por meio de um navegador, como páginas HTML.- Na interface do usuário,
Web.BrowserContents
está substituindoWeb.Page
, porqueWeb.Page
é baseado no Internet Explorer. Web.BrowserContents
foi inicialmente construído no Chromium, mas agora usa o controle WebView2 do Microsoft Edge.- É necessário um gateway para usá-lo em ambientes de nuvem, como o Power Query Online.
A tabela a seguir resume as diferenças.
Web.Conteúdos | Web.Page | Web.BrowserConteúdos | |
---|---|---|---|
Conteúdo que não seja do navegador (arquivos .txt/.csv, JSON e assim por diante) | x | ||
Conteúdo do navegador (HTML) | x | x | |
Tipos de autenticação suportados | Anónimo Windows Básica API da Web Conta Organizacional |
Anónimo Windows (somente credenciais do usuário atual) API da Web |
Anónimo Windows Básica API da Web |
Requer um gateway em hosts de nuvem | N | Y | Y |
Atualmente gerado por | Todos os anfitriões | Excel e Power Query Online | Power BI Desktop |
Construído sobre | .NET | Internet Explorer | Controle WebView2 do Microsoft Edge |
Nota
As solicitações POST só podem ser feitas anonimamente ao usar Web.Contents
o .
Avisos "Este browser já não é suportado" na Vista Web
Ao importar uma página Web, pode ver uma pré-visualização da página utilizando o separador Vista Web na caixa de diálogo do navegador do Power Query. Por vezes, esta pré-visualização pode apresentar um aviso como "Este navegador já não é suportado". Quando isso acontece, geralmente é porque o Modo de Exibição da Web atualmente processa a visualização do Modo de Exibição da Web usando o Internet Explorer, que não é mais suportado por alguns sites. No entanto, isso afeta apenas o modo de exibição da Web e não afeta o conector da Web em si. Contanto que você esteja usando os conectores baseados em Web.Contents ou Web.BrowserContents (e não Web.Page), você pode ignorar esses avisos com segurança. Consulte Qual é a diferença entre Web.Contents, Web.BrowserContent e Web.Page? para obter mais informações sobre os diferentes conectores da Web e suas tecnologias subjacentes.
Tratamento de páginas Web dinâmicas
As páginas da Web que carregam seu conteúdo dinamicamente podem exigir tratamento especial. Se você notar erros esporádicos em suas consultas da Web, é possível que esteja tentando acessar uma página da Web dinâmica. Um exemplo comum deste tipo de erro é:
- Você atualiza uma consulta que se conecta ao site.
- Você verá um erro (por exemplo, "a coluna 'Foo' da tabela não foi encontrada").
- Atualizar a consulta novamente.
- Não ocorre nenhum erro.
Este tipo de problemas deve-se geralmente ao calendário. As páginas que carregam seu conteúdo dinamicamente às vezes podem ser inconsistentes, uma vez que o conteúdo pode mudar depois que o navegador considera o carregamento concluído. Às vezes, o conector da Web baixa o HTML depois que todo o conteúdo dinâmico é carregado. Outras vezes, as alterações ainda estão em andamento quando ele baixa o HTML, levando a erros esporádicos.
A solução é usar a WaitFor
opção Web.BrowserContents, que indica um seletor ou um período de tempo que deve ser aguardado antes de baixar o HTML.
Como saber se uma página é dinâmica? Geralmente é muito simples. Abra a página num browser e veja-a carregar. Se o conteúdo aparecer imediatamente, é uma página HTML normal. Se aparecer dinamicamente ou mudar ao longo do tempo, é uma página dinâmica.
Usando um gateway com o conector da Web
Tanto Web.BrowserContents quanto Web.Page exigem o uso de um gateway de dados local quando publicados em um serviço de nuvem, como modelos semânticos ou fluxos de dados do Power BI ou fluxos de dados do Power Apps. (Atualmente, o Dynamics 365 Customer Insights não oferece suporte ao uso de um gateway.)
Se estiver a utilizar o Web.Page e receber um Please specify how to connect
erro, certifique-se de que tem o Internet Explorer 10 ou posterior instalado no computador que aloja o gateway de dados local.
Se você estiver usando Web.BrowserContents e receber um We were unable to find the WebView2 runtime
erro, certifique-se de ter o tempo de execução WebView2 instalado na máquina que hospeda seu gateway de dados local. A mensagem de erro deve fornecer um link para o instalador de tempo de execução WebView2. Se você instalou o tempo de execução, mas ainda está vendo o erro, verifique se a conta de serviço do gateway (geralmente PBIEgwService) tem acesso ao local de instalação do tempo de execução do WebView2 (por exemplo, C:\Program Files (x86)\Microsoft\EdgeWebView).
Erros "Encontramos um erro ao inicializar o navegador da Web" ao usar Web.BrowserContents
Este erro pode ocorrer se o processo de chamada Web.BrowserContents estiver sendo executado no modo elevado, uma vez que WebView2 atualmente não suporta a execução com privilégios de administrador.
Usando Web.Page em vez de Web.BrowserContents
Nos casos em que você precisa usar Web.Page
em vez de Web.BrowserContents
, você ainda pode usar Web.Page
manualmente .
No Power BI Desktop, você pode usar a função mais antiga Web.Page
desmarcando a opção Habilitar inferência de tabela da Web:
Na guia Arquivo, selecione Opções e configurações>Opções.
Na secção Global, selecione Power Query Editor.
Desmarque a opção Ativar inferência de tabela da Web e selecione OK.
Reinicie o Power BI Desktop.
Nota
Atualmente, não é possível desativar o uso do no Power BI Desktop otimizado para o Servidor de Relatório do
Web.BrowserContents
Power BI.
Você também pode obter uma cópia de uma Web.Page
consulta do Excel. Para copiar o código do Excel:
- Selecione Da Web na guia Dados .
- Digite o endereço na caixa de diálogo Da Web e selecione OK.
- No Navegador, escolha os dados que pretende carregar e, em seguida, selecione Transformar Dados.
- No separador Base do Power Query, selecione Editor Avançado.
- No Editor Avançado, copie a fórmula M.
- No aplicativo que usa
Web.BrowserContents
o , selecione o conector Consulta em Branco. - Se estiver a copiar para o Power BI Desktop:
- Na guia Página Inicial, selecione Editor Avançado.
- Cole a consulta copiada
Web.Page
no editor e selecione Concluído.
- Se estiver a copiar para o Power Query Online:
- Na consulta em branco, cole a consulta copiada
Web.Page
na consulta em branco. - Selecione um gateway de dados local a ser usado.
- Selecione Seguinte.
- Na consulta em branco, cole a consulta copiada
Você também pode inserir manualmente o código a seguir em uma consulta em branco. Certifique-se de que introduz o endereço da página Web que pretende carregar.
let
Source = Web.Page(Web.Contents("<your address here>")),
Navigation = Source{0}[Data]
in
Navigation
Capturando solicitações da Web e revogação de certificados
Reforçámos a segurança das ligações Web para proteger os seus dados. No entanto, isso significa que determinados cenários, como a captura de solicitações da Web com o Fiddler, não funcionarão mais por padrão. Para habilitar esses cenários:
Abra Power BI Desktop.
Na guia Arquivo, selecione Opções e configurações>Opções.
Em Opções, em Segurança Global>, desmarque Ativar verificação de revogação de certificado.
Selecione OK.
Reinicie o Power BI Desktop.
Importante
Lembre-se de que desmarcar Ativar verificação de revogação de certificado tornará as conexões da Web menos seguras.
Para definir esse cenário na Diretiva de Grupo, use a chave "DisableCertificateRevocationCheck" no caminho do Registro "Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft Power BI Desktop". Definir "DisableCertificateRevocationCheck" como 0 sempre habilitará a verificação (impedindo o Fiddler e software semelhante de funcionar) e definir "DisableCertificateRevocationCheck" como 1 sempre desativará a verificação (ativando o Fiddler e software semelhante).
Alterar o método de autenticação
Em alguns casos, talvez seja necessário alterar o método de autenticação usado para acessar um site específico. Se essa alteração for necessária, vá para Alterar o método de autenticação.
Autenticação em serviços arbitrários
Alguns serviços suportam a capacidade do conector Web de autenticação com autenticação OAuth/Microsoft Entra ID pronta para uso. No entanto, isso não funcionará na maioria dos casos.
Ao tentar autenticar, se vir o seguinte erro:
We were unable to connect because this credential type isn’t supported for this resource. Please choose another credential type.
Entre em contato com o proprietário do serviço. Eles precisam alterar a configuração de autenticação ou criar um conector personalizado.
Conector da Web usa HTTP 1.1 para se comunicar
O conector Web do Power Query comunica com uma origem de dados utilizando HTTP 1.1. Se sua fonte de dados estiver esperando se comunicar usando HTTP 1.0, você pode receber um erro, como 500 Internal Server Error
.
Não é possível mudar o Power Query para utilizar HTTP 1.0. O Power Query envia sempre um Expect:100-continue
quando existe um corpo para evitar a passagem de uma carga possivelmente grande quando a própria chamada inicial pode falhar (por exemplo, devido à falta de permissões). Atualmente, esse comportamento não pode ser alterado.
Conectando-se ao Microsoft Graph
Atualmente, o Power Query não suporta a ligação a APIs REST do Microsoft Graph. Para obter mais informações: Falta de suporte para o Microsoft Graph no Power Query