Obtenha o conteúdo HTML do Qt WebKit no QML

1

Minha aplicação é construída com QML (Ubuntu SDK), e eu preciso obter o conteúdo HTML de uma página carregada com um Qt WebView após a página ser carregada. Com base em algumas pesquisas iniciais, parece que isso costumava ser suportado diretamente, mas não mais. Estou usando o Qt 5 / QtWebKit 3. Como posso obter a fonte da página com JavaScript?

Editar : Descobri o objeto experimental , mas ainda não encontrei o que preciso. Mais aqui: link

Editar : apenas uma perspectiva mais ampla sobre o que estou tentando fazer. Meu aplicativo é anexado à conta do Freshbooks de um usuário por meio do OAuth. Depois de inserir as credenciais, preciso acessar o código do verificador OAuth do conteúdo da página. Por meio do protocolo OAuth, não sei de nenhuma outra maneira de obter esse código. Eu não posso nem mesmo copiar, colar o usuário, porque você não pode selecionar texto no WebView: (

    
por Jonah 17.02.2014 / 20:29

1 resposta

2

Para sua primeira pergunta, você deve conseguir fazer isso executando algum Javascript dentro do WebView com WebView.experimental.evaluateJavaScript() . Este Javascript pode obter a fonte da página (ou melhor ainda, apenas o conteúdo que você quer, já que será melhor para analisar HTML do que o JavaScript em QML) e reportá-lo de volta através do título do documento. Por exemplo,

webview.experimental.evaluateJavaScript(
    "document.title = document.getElementById('id').innerHTML")

Eu admito que não sei muito sobre o OAuth, mas não posso deixar de sentir que você está fazendo algo errado se precisar fazer isso. Você fez check-out Contas on-line ou este plug-in OAuth ?

    
por Robert Schroll 17.02.2014 / 23:57