Swift 2 OS X如何提取WebView中加载的URL的源代码



注意:此问题是针对Swift 2,OS X,而不是iOS。

我需要一种方法来编程地获取后JS处理后的源内容(浏览器的"视图源"选项中可用的最终源内容)。

在编程中检索源内容时,它具有JSON搜索结果的占位符,而不是浏览器的"视图源"所显示的实际结果。

我能够加载页面,但不知道如何提取已加载URL的源内容。

func loadAddressURL() {
    let url = "https://url/search"
    let URL = NSURL(string: url)!
    let request = NSURLRequest(URL: URL)
    webView.mainFrame.loadRequest(request)
}

使用以下代码:

document.createTextNode( document.documentElement.outerHTML );

在操作应用程序扩展程序中以访问URL并返回HTML:

扩展点典型的应用扩展功能操作(iOS和macOS; UI和非UI变体)操纵或查看源自主机应用中的内容。

参考

  • 应用程序扩展编程指南:处理常见方案 - 访问网页

  • viewSource:查看Safari中给定页面的来源 - action.js

  • 应用程序扩展编程指南:应用程序扩展增加您的影响

  • Swift:语言与编译器研究的挑战和机会(PDF)

最新更新