我使用WKWebView登录到一个网站,现在我想解析该网站的html。如何快速访问HTML网站?我知道它如何用于UIWebView但不适用于WKWebView。
谢谢你的帮助!
如果您等到页面加载完毕,则可以使用:
webView.evaluateJavaScript("document.documentElement.outerHTML.toString()", completionHandler: { (html: Any?, error: Error?) in print(html) })
您还可以注入一些JavaScript,使您返回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) } } }
您可以注入的javascript如下所示:
webkit.messageHandlers.didGetHTML.postMessage(document.documentElement.outerHTML.toString());