Se si attende fino a quando la pagina è caricata è possibile utilizzare:
webView.evaluateJavaScript("document.documentElement.outerHTML.toString()",
completionHandler: { (html: Any?, error: Error?) in
print(html)
})
Si potrebbe anche iniettare qualche javascript che restituisce indietro il codice HTML.
let script = WKUserScript(source: javascriptString, injectionTime: injectionTime, forMainFrameOnly: true)
userContentController.addUserScript(script)
self.webView.configuration.userContentController.addScriptMessageHandler(self, name: "didGetHTML")
…
func userContentController(userContentController: WKUserContentController,
didReceiveScriptMessage message: WKScriptMessage) {
if message.name == "didGetHTML" {
if let html = message.body as? String {
print(html)
}
}
}
Il javascript si potrebbe iniettare sembra qualcosa di simile:
webkit.messageHandlers.didGetHTML.postMessage(document.documentElement.outerHTML.toString());
che ha funzionato! Molte grazie! – MotoxX
dopo aver modificato cssRule all'interno di